我正在寻找一个函数,如果存在 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/

10-14 18:08
查看更多