在windows下保存了一個腳本文件,用ssh上傳到centos,添加權限執行nginx提示沒有那個文件或目錄。
shell腳本放到/etc/init.d/目錄下,再執行/etc/init.d/nginx,提示多了這句/bin/bash^M: bad interpreter。
網上找了資料才知道
若是這個腳本在Windows下編輯過,就有可能被轉換成Windows下的dos文本格式了,這樣的格式每一行的末尾都是以\r\n來標識,它的ASCII碼分別是0x0D,0x0A。若是你將這個腳本文件直接放到Linux上執行就會報/bin/bash^M: bad interpreter錯誤提示。
解決方法很簡單,首先你先要檢查一下看看你的腳本文件是否是這個問題致使的,用vi命令打開要檢查的腳本文件,而後用
:set ff?
命令檢查一下,看看是否是dos字樣,若是是dos格式的,繼續執行
:set ff=unix
而後執行
:qw
保存退出便可。nginx