В Unix я могу вызывать определенные программы из любой точки мира , например sort , pwd или my_custom_script.sh .
Как я могу узнать, где в системе действительно находится my_custom_script.sh ?
Используйте 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
Я бы порекомендовал использовать type command . which command выглядят только в PATH, поэтому могут вводить в заблуждение встроенные функции (например, pwd), функции и псевдонимы.