在 Unix 上,我可以从任何地方调用某些程序,例如sort
或。pwd
my_custom_script.sh
我怎样才能知道系统my_custom_script.sh
实际位于何处?
答案1
我建议使用type command
。which command
只在 PATH 中查找,因此可能会误导内置函数(例如 pwd)、函数和别名。
答案2
使用which
which sort
为您提供(例如):
/usr/bin/sort
这也有助于您解决 PATH 问题,例如,如果您安装了同一二进制文件的多个版本,但不知道调用的是哪一个。
因此,如果您有多个版本,则可以使用开关-a
:
charon:~ werner$ which -a ruby
/Users/werner/.rvm/rubies/ruby-1.9.2-head/bin/ruby
/Users/werner/.rvm/bin/ruby
/usr/bin/ruby