Linux Shell 錯誤: $'\r': command not found錯誤解決


在window環境下編輯的shell腳本放在linux上運行報錯。

 

問題是在Windows下換行的“\r”到了Linux環境下不能夠識別了。

因為Linux環境下默認的換行符為“\n”。

這里就需要做一點修改轉換的工作。

 

方法一、

sed -i 's/\r//' 腳本名  #轉化為unix格式

 

記錄一個報錯: 

sed -i 's/\r//' ./test.sh   

char 7: unknown option to `s'

原因:

因為路徑里面包含有“/”作為分隔符,這會和sed的替換操作的分隔符“/”引起混淆;

所以,只要不使用“/”做分隔符就可以解決這個問題。

sed -i 's/\r//' test.sh   

 

方法二、

1.安裝轉換工具   yum -y install dos2unix

2.轉換格式         dos2unix  腳本名

3.賦予權限         chmod 755 腳本名

4.執行腳本         ./腳本名


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM