替換 M字元

2021-06-21 20:06:28 字數 933 閱讀 2642

關於回車與換行

很久以前,老式的電傳打字機使用兩個字元來另起新行。乙個字元把滑動架移回首位 (稱為回車,ascii碼為0d),另乙個字元把紙上移一行 (稱為換行,ascii碼為0a)。當計算機問世以後,儲存器曾經非常昂貴。有些人就認定沒必要用兩個字元來表示行尾。unix 開發者決定他們可以用乙個字元來表示行尾,

三種行尾格式如下:

unix : n

dos : rn

mac : r

這意味著,如果你試圖把乙個檔案從一種系統移到另一種系統,那麼你就有換行符方面的麻煩。

因為ms-dos及windows是回車+換行來表示換行,因此在linux下用vim檢視在windows下寫的**,行尾後「^m」符號。 www.2cto.c

在linux下使用vi來檢視一些在windows下建立的文字檔案,有時會發現在行尾有一些「^m」。有幾種方法可以處理。

2.使用vi的替換功能。啟動vi,進入命令模式,輸入以下命令:

:%s/^m$//g # 去掉行尾的^m。

:%s/^m//g # 去掉所有的^m。

:%s/^m/[ctrl-v]+[enter]/g # 將^m替換成回車。

:%s/^m/\r/g # 將^m替換成回車。

3.使用sed命令。和vi的用法相似:  

$ sed -e 's/^m/\n/g' myfile.txt

注意:這裡的「^m」要使用「ctrl-v ctrl-m」生成,而不是直接鍵入「^m」。

補充:將windows中的文字檔案傳到linux後,會在每行的末尾多出乙個^m符號。當進行shell程式設計時,該符號可能會導致正規表示式匹配失敗。如果想 去掉這個符號可以使用dos2unix命令。當然如果想恢復為windows下的模式可以使用unix2dos命令。   當從windows傳來乙個檔案時,可以使用vim -b 命令來開啟該檔案,這樣就能看到行尾的^m符號了,否則是看不到的。

vim替換 m字元

替換 m字元 在linux下使用vi來檢視一些在windows下建立的文字檔案,有時會發現在行尾有一些 m 有幾種方法可以處理。2.使用vi的替換功能。啟動vi,進入命令模式,輸入以下命令 s m g 去掉行尾的 m。s m g 去掉所有的 m。s m ctrl v enter g 將 m替換成回車...

vim替換 M字元

posted by 機械人 on 25th 一月 2010 in vim替換 m字元 在linux下使用vi來檢視一些在windows下建立的文字檔案,有時會發現在行尾有一些 m 有幾種方法可以處理。2.使用vi的替換功能。啟動vi,進入命令模式,輸入以下命令 s m g 去掉行尾的 m。s m g...

vim替換 M字元

posted by 機械人 on 25th 一月 2010 in vim替換 m字元 在linux下使用vi來檢視一些在windows下建立的文字檔案,有時會發現在行尾有一些 m 有幾種方法可以處理。2.使用vi的替換功能。啟動vi,進入命令模式,輸入以下命令 s m g 去掉行尾的 m。s m g...