在 Linux 下編輯文件時,經常會在文件中看到一個符號 '^M'
是的,它是『一個』符號,代表的是 Windows(DOS) 系統的換行符號
在 Windows 作業系統下編輯的文件,或複製貼上的文字,在 unix 環境下使用 vim 開啟
就會在原本行尾的地方出現這個符號,在 vim 中要使用複合鍵 Ctrl+V && Ctrl+M 才能打出來
移除它的方法:
1. 利用字串取代('^M' 要用 Ctrl+V 不要放開 Ctrl 再按 M 才能打出來喔!)
:%s/^M/\r/g
or
:%s/\r//g
2. 利用指令 dos2unix
dos2unix [-kn] filename [new filename]
引用:
Ex:
[root@localhost ~]# dos2unix -k -n diff.log newdiff.log
dos2unix: converting file diff.log to file newdiff.log in UNIX format
*註:也可以反過來把UNIX格式文件轉換為DOS格式文件,unix2dos [-kn] filename [new filename]。
3. 使用指令 tr
cat filename | tr -d '\r' > newfilename