Grep

刪除非列印字元

  • January 18, 2013

我有一個製表符分隔的文本文件。當我用 vi 編輯器打開文件時,我可以看到 ^M 字元(藍色)。這不是我的數據的一部分。它到達那裡是因為原始 SQL 數據有輸入 /r 符號。

713498  29195   NWSO    NE SA COLLEGE  2       O-      0.3     0.3     0.0     1               MHR     N       Y       Y       ^M      aher

如何在不影響選項卡位置的情況下刪除此字元?換句話說,最後一個 Y 和“aher”字之間應該有 2 個製表符。

在你可以用命令模式vi替換所有字元^M

:%s/``Ctrl+ V``Ctrl+M``//g

這將刪除所有這些^M

或者

你也可以這樣做sed

sed -i 's/``Ctrl+ V``Ctrl+M``//g' filename

翻譯已經顯示了它的力量!

tr -d "\r" 

引用自:https://serverfault.com/questions/470220