Answers:
几天前,我对自己的回答感到满意。我也知道该which命令不用于测试命令是否存在。现在,我对自己的回答不太满意,因此我提到了这个很好的回答。
用一个简单的which命令:
which foo.sh
或type命令:
type foo.sh
您可以$PATH通过脚本中的路径顺序或脚本启动时的绝对路径(例如EG)来影响这一点
/home/user/scripts/foo.sh
例
如果PATH定义如下
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
然后,您以较高的优先级启动一个脚本或该脚本中/usr/local/bin和中的其他内容。/usr/bin/usr/local/bin
bash和zsh另外还有type内置的; 而不是zshwhich,从不同的bash是内置的(不/usr/bin/which)