我正在寻找一个函数,如果存在 shell 命令,它将返回 1,否则返回 0
我知道有 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
只需将您想要检查的任何命令放在上面有
ls
的位置。关于shell - 如何找出shell中是否存在shell命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4861014/