1. 程式人生 > >工作記錄1--vi小問題

工作記錄1--vi小問題

1.vi全部替換

:%s/aaa/bbb/g(或者 :g/aaa/s//bbb/g) 替換每一行中所有 aaa為 bbb

2.刪除文字中的^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