Mungkinkah skrip menggunakan baris baru Dos?
Coba jalankan dos2unix di atasnya.
Baris pertama, #!/bin/bash
, memberi tahu Linux di mana menemukan juru bahasa. Skrip juga harus dapat dieksekusi dengan chmod +x script.sh
, yang tampaknya Anda lakukan.
Kemungkinan besar Anda membuat file ini dengan editor windows, yang akan menempatkan <cr><lf>
di akhir setiap baris. Ini adalah standar di bawah dos / windows. OS X akan menempatkan <cr>
di akhir setiap baris. Namun, di bawah Unix / Linux, standarnya adalah dengan hanya meletakkan <lf>
di akhir baris.
Linux sekarang sedang mencari file bernama /bin/bash<cr>
untuk menafsirkan file, di mana <cr>
adalah karakter carriage return, yang merupakan karakter file yang valid di Linux. File seperti itu tidak ada. Oleh karena itu kesalahan.
Solusi: Edit file dengan editor di Linux dan singkirkan <cr>
tambahan . Salah satu alat yang biasanya berfungsi saat file diedit di Windows adalah dos2unix
.