刪除文本中的^M

問題描述:對於換行,window下用回車換行(0A0D)來表示,linux下是回車(0A)來表示。這樣,將window上的文件拷到unix上用時,總會有個^M,請寫個用在unix下的過濾windows文件的換行符(0D)的shell或c程序。
使用命令:

cat filename1 | tr -d “^V^M” > newfile;

使用命令:

sed -e “s/^V^M//” filename > outputfilename

需要注意的是在1、2兩種方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必須要手工進行輸入,而不是粘貼。
在vi中處理:首先使用vi打開文件,然後按ESC鍵,接着輸入命令:

:%s/^V^M//
:%s/^M$//g

如果上述方法無用,則正確的解決辦法是:

tr -d “\r” < src >dest
tr -d “\015″ dest
strings A>B
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章