在linux下,不可避免的會(huì)用VIM打開一些windows下編輯過的文本文件。我們會(huì)發(fā)現(xiàn)文件的每行結(jié)尾都會(huì)有一個(gè)^M符號(hào),這是因?yàn)?DOS下的編輯器和Linux編輯器對(duì)文件行末的回車符處理不一致,
對(duì)于回車符的定義:
windows:0D0A
unix\linux: 0A
MAC: 0D
比較快捷的去除這些符號(hào)的方法有這么幾種:
(1)是用VI的命令:
使用vi打開文本文件
vi dos.txt
命令模式下輸入
:set fileformat=unix
:w
(2) VI下使用正則表達(dá)式替換
g/\^M/s/\^M//
或者
%s/^M//g
(3)使用sed 工具
sed ’s/^M//’ filename > tmp_filename
(4)既然window下的回車符多了‘\r’,那么當(dāng)然通過刪除‘\r’ ,也可以實(shí)現(xiàn):
tr -d '\r'
(5)最后一個(gè)方法是本人最常用的方法,個(gè)人覺得最方便
在終端下敲命令:
$ dos2unix filename
直接轉(zhuǎn)換成unix格式,就OK了!~
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)
點(diǎn)擊舉報(bào)。