Linux環境 行末尾的 M符號刪除

2021-10-04 09:52:27 字數 486 閱讀 7979

出現^m的原因:

window系統中用/r/n來表示換行,linux中用/n來表示換行,windows的文字檔案,直接拿到linux中使用可能會會出錯,因為多出了「/r」字元,這就是我們看到的^m。

解決方案:

1.使用正規表示式刪除

在命令模式(vim)下輸入    :%s/^m//g   然後回車即可替換 ,注意,這裡的」^m」的輸入是通過"ctrl+v"、"ctrl+m"鍵生成的 

2.使用命令刪除

使用vim開啟文字檔案 ,命令模式下輸入   :set fileformat=unix   即可,然後儲存(:wq)、退出

3.使用sed 工具 

sed 』s/^m//』 filename > tmp_filename 

4.在終端下敲命令: 

$ dos2unix filename 

Linux檔案中開始處的feff,行末的 M

windows中的換行符為 m,若直接把windows中的檔案複製到linux中,則在linux中的檔案開始處有乙個 feff 代表著檔案的開始,包含三個位元組 0xef,0xbb,0xbf 每一行的末尾會有乙個 m 在linux中 m的轉義字元為 r,所以去除 m可以使用python中的strip...

Linux下文字檔案中 M 符號問題的解決

三種行尾格式如下 unix n dos rn mac r 這意味著,如果你試圖把乙個檔案從一種系統移到另一種系統,那麼你就有換行符方面的麻煩。因為ms dos及windows是回車 換行來表示換行,因此在linux下用vim檢視在windows下寫的 行尾後 m 符號。www.2cto.com 在v...

Linux下文字檔案中 M 符號問題的解決

答 為了解決這個問題,linux下專門有兩個工具可以互換windows格式和linux格式,它們分別是dos2unix和unix2dos。比如用下面的命令就可以將檔名為 filename 檔案從windows格式轉換為linux文字格式。正文 在linux下,不可避免的會用vim開啟一些window...