n00*_*mer 3 shell command-line csh which
我正在寻找一个函数,如果存在一个shell命令将返回1,否则我知道有一个which
命令返回命令的路径(如果存在).它还在手册中说该命令应该具有返回值,但是尝试set a = `which some_command.bin`
不会输入任何值a
.我知道我总是可以使用which
然后解析结果,我只是在寻找一个更清洁的解决方案
通常不会像那样检索shell命令的返回值.您通常需要运行该命令,然后特殊环境变量$?
将为您提供返回值.
请参阅以下成绩单tcsh
:
pax$ which qq ; echo $?
qq: Command not found.
1
pax$ which ls ; echo $?
/bin/ls
0
Run Code Online (Sandbox Code Playgroud)
只要把你要检查的命令检查我ls
上面的位置.