Doküman

Bash betiğinde kod 127 hata durumu

Bash betiğini çalıştırmaya çalışırken çıkış kodu 127 hatası mı alıyorsunuz?  Bu, Linux sisteminizin komut dosyasının içinde başvurulan komutu bulamadığı anlamına gelir; bu, komut yolunun geçerli olmadığını veya komutun hiç yüklenmediğini gösterebilir.  Bu eğitimde, bu “komut bulunamadı” hatasına neyin sebep olduğunu açıklayacağız ve size bunu nasıl düzelteceğinizi göstereceğiz.

Çıkış kodu 127 hata durumu

 

127 hata kodu “komut bulunamadı” anlamına gelir.  Bu, Bash betiğinizde veya Bash komut satırında verilen herhangi bir komut, PATH sistem ortam değişkeni tarafından tanımlanan yolların hiçbirinde bulunmadığında meydana gelir.Çözüm, kullandığınız komutun $PATH’inizde bulunabildiğinden emin olmaktır.  Komut yolunuzda değilse, onu ekleyin veya yürütmeye çalıştığınız komutun mutlak tam yolunu kullanın.
Öncelikle komutu doğru yazdığımızdan ve sistemde var olduğundan emin olalım.  Bunu hangi komutla yapabiliriz.  Örneğin burada tar komutunun konumunu ve varlığını kontrol ediyoruz:

$ which tar
/usr/bin/tar

Burada tar’ın /usr/bin dizininde bulunduğunu görebiliriz.  Daha sonra PATH ortam değişkenimizin içinde /usr/bin dosyasının mevcut olup olmadığını kontrol edelim.

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Bizim durumumuzda dizin zaten PATH değişkenimizin içindedir.  Zaten PATH değişkeninin bir parçası değilse, Bash betiğimizde tar komutunun tam yoluna başvurabiliriz:

$ /usr/bin/tar [options]

Yazının orijinalini buradan okuyabilirsiniz.