Birkaç gün önce cevabımdan memnun kaldım. Ayrıca whichbir komutun var olup olmadığını test etmek için komutun kullanılmadığını da biliyordum . Şimdi cevabımdan pek memnun değilim ve bu büyük cevaba atıfta bulunuyorum .
Basit bir whichkomutla:
which foo.sh
Veya bir typekomut:
type foo.sh
Ve bunu, yolunuzdaki yolların sırasıyla $PATHveya komut dosyası başladığında mutlak bir yolla etkileyebilirsiniz , EG
/home/user/scripts/foo.sh
Misal
PATH aşağıdaki gibi tanımlanırsa
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
Ve bir betik ya da içinde /usr/local/binve içinde olan başka bir şeyi /usr/bin, /usr/local/bindaha yüksek bir öncelik olarak başlatırsınız .
bashvezshoradatypeyerleşik; bunun yerinezshwhich, farklı olarakbash, yerleşik (değil/usr/bin/which)