執行sh腳本錯誤:/bin/sh^M: bad interpreter: 沒有那個文件或目錄

今天執行腳本時發現如下錯誤: 

/bin/sh^M: bad interpreter: 沒有那個文件或目錄 

錯誤分析: 

因爲操作系統是windows,我在windows下編輯的腳本,所以有可能有不可見字符。 

腳本文件是DOS格式的, 即每一行的行尾以\n\r來標識, 其ASCII碼分別是0x0D, 0x0A. 

可以有很多種辦法看這個文件是DOS格式的還是UNIX格式的, 還是MAC格式的 

解決方法: 

  vim filename 

  然後用命令 

  :set ff #可以看到dos或unix的字樣. 如果的確是dos格式的。 

  然後用 

  :set ff=unix #把它強制爲unix格式的, 然後存盤退出。 

  再次運行腳本。 

另外一種解決方法是使用dos2unix命令轉一下,即輸入: dos2unix 文件名


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章