天天看點

-bash: ./start.sh: /bin/bash^M: bad interpreter問題解決

今天碰到的問題, 網上有很多這樣的文章,說明下自己解決的過程吧 .

執行一個腳本start.sh 時, 一直是提示我:

-bash: ./start.sh: /bin/bash^M: bad interpreter: No such file or directory

開始是以為權限不夠, 不能執行, 接着就給權限加上執行權限, 還是報上面問題.

接着修改路徑改了/root/.bash_profile 問題依舊

最後網上找到原因了

出現上面錯誤的原因之一是腳本檔案是DOS格式的, 即每一行的行尾以\r\n來辨別, 使用vim編輯器打開腳本, 運作:

:set ff?

fileformat=dos  額 終于發現問題所在了  格式不相容啊

可以看到DOS或UNIX的字樣.

使用set ff=unix把它強制為unix格式的, 然後存盤退出, 即可.

再次執行  ok沒問題了

回想問題出現的原因 可能是該腳本實在windows下面寫的 傳到linux下執行時出現格式不相容的問題。

今天在這寫下,也當給自己提個醒吧。