Unix'te, belirli programları her yerden sort, pwdveya gibi , çağırabilirim my_custom_script.sh.
Sistemin my_custom_script.shgerçekte nerede bulunduğunu nasıl öğrenebilirim ?
Unix'te, belirli programları her yerden sort, pwdveya gibi , çağırabilirim my_custom_script.sh.
Sistemin my_custom_script.shgerçekte nerede bulunduğunu nasıl öğrenebilirim ?
Yanıtlar:
Kullanmanızı tavsiye ederim type command. which commandyalnızca PATH'a bakın, bu nedenle yerleşikler (pwd gibi), işlevler ve takma adlar için yanıltıcı olabilir.
whichbir kabuk yerleşimi değildir, bu nedenle iç komutlar / takma adlar ve benzerleri hakkında hiçbir fikri yoktur.
kullanım which
which sort
Size verir (örneğin):
/usr/bin/sort
Bu aynı zamanda PATH'ınızla ilgili sorunları gidermenize de yardımcı olur, örneğin aynı ikili sistemin birkaç versiyonunun kurulu olması ve hangisinin çağrıldığını bilmiyorsanız.
Bu nedenle, birden fazla sürümünüz varsa, -aanahtarı kullanabilirsiniz :
charon:~ werner$ which -a ruby
/Users/werner/.rvm/rubies/ruby-1.9.2-head/bin/ruby
/Users/werner/.rvm/bin/ruby
/usr/bin/ruby
whichmy_custom_script.sh için çalışacak ancak pwd ve benzeri komutlar hakkında yanıltıcı bilgi verecektir.
whichaslında takma adları da listeler.