在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.執行腳本 ./腳本名