Programın yolunu bulun


4

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 ?

linux  bash  unix  shell 

Yanıtlar:


2

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.


whichaslında takma adları da listeler.
Daniel Beck

1
Korkarım olamaz. whichbir kabuk yerleşimi değildir, bu nedenle iç komutlar / takma adlar ve benzerleri hakkında hiçbir fikri yoktur.
jlliagre

Linux kutumda "hangi" beklenmedik bir şekilde takma adı verildi. Bunun için üzgünüm.
Daniel Beck

8

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

1
whichmy_custom_script.sh için çalışacak ancak pwd ve benzeri komutlar hakkında yanıltıcı bilgi verecektir.
jlliagre
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.