Saya menggunakan OSX Snow Leopard.
Inilah isi lengkap dari grr.sh
:
#!/bin/sh
echo wow
Ketika saya mencoba menjalankannya dari terminal:
$ grr.sh
-bash: grr.sh: command not found
$ /bin/sh grr.sh
wow
$ sh grr.sh
wow
$ bash grr.sh
wow
Baik. Cukup adil. Saya akan memberikan izin yang dapat dieksekusi, lalu coba lagi:
$ chmod +x grr.sh
$ grr.sh
-bash: grr.sh: command not found
$ chmod 755 grr.sh
$ grr.sh
-bash: grr.sh: command not found
Hmmm. Mungkin itu akan berhasil jika saya menggunakan bash secara eksplisit? Saya akan mengubah konten file menjadi:
#!/bin/bash
echo wow
Dan saya mendapatkan hasil yang sama persis. Apa yang bisa saya rusak ?!
Satu hal terakhir! Jika Anda penasaran ...
$ which sh
/bin/sh
Apakah lokasi grr.sh dalam
$PATH
variabel? Jika tidak, Anda harus memasukkan:jika Anda berada di folder yang sama dengan grr.sh. Jika tidak, maka berikan path lengkap untuk itu.
sumber
izin untuk file salah. Coba perintah berikut:
sumber
Ya, dan apa artinya ./grr.sh, adalah bahwa dalam direktori ini, jalankan perintah grr.sh. Tunggal . berarti di direktori kerja. Jika tidak, shell Anda menganggap Anda mencoba menjalankan perintah di $ PATH Anda.
sumber