一個非常普遍的問題,但是我無法用sed解決它。sed -e's/^ M/d'不能正常工作
我有一個腳本文件(一批命令),說myfile.txt
立即執行創建一個列表。現在當我執行批處理操作時,我的命令行界面清楚地顯示它無法解析命令,因爲換行^M
正在每行的末尾加起來。
我認爲sed
是去了解它。我最好的方式嘗試:
sed -e 's/^M/d' myfile.txt > myfile1.txt
mv myfile1.txt myfile.txt
它沒有工作。我也嘗試這樣做,也沒有工作:
sed -e 's/^M//g' myfile.txt > myfile1.txt
mv myfile1.txt myfile.txt
後來我想可能是sed
正在它作爲行的開頭一個字符M,因此沒有結果。所以我嘗試過:
sed -e 's/\^M//g' myfile.txt > myfile1.txt
mv myfile1.txt myfile.txt
但是沒有變化。我正在做一個基本的錯誤嗎?請注意,因爲我在sed
不好。
我發現了一個決議,雖然這是在vi編輯器,並在命令模式下執行該打開文件:
:set fileformat=unix
:w
但我想它在sed
爲好。
這不是你直接詢問的:除了sed,dos2unix也是這樣做的。你的問題意味着你不瞭解它。 UNIX有很多工具,這是一個非常單一的目的工具。 –