[精讚] [會員登入]
52

利用tr如何移除檔案中的 ^M

利用tr如何移除檔案中的換行 ^M

此文完整連結 http://n.sfs.tw/10906

複製連結 利用tr如何移除檔案中的 ^M@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2017-03-15 11:27:11 最後編修
2017-03-15 01:03:15 By 瘦河馬
 

如何移除檔案中的 ^M?

在linux或freebsd 中當我們用 vi/vim/cat 打開說明檔或是DOS的檔案時,有時會在檔案中或行尾發現 ^M (有開顏色顯示的話是藍色的^M) 這個符號,他並不是 '^' + 'M' 而是代表一個換行的符號 chr(13),以下是會可能會出現的符號:

Oct Dec Hex Name
000 0 0x00 NUL
001 1 0x01 SOH, Control-A
002 2 0x02 STX, Control-B
003 3 0x03 ETX, Control-C
004 4 0x04 EOT, Control-D
005 5 0x05 ENQ, Control-E
006 6 0x06 ACK, Control-F
007 7 0x07 BEL, Control-G
010 8 0x08 BS, backspace, Control-H
011 9 0x09 HT, tab, Control-I
012 10 0x0a LF, line feed, newline, Control-J
013 11 0x0b VT, Control-K
014 12 0x0c FF, form feed, NP, Control-L
015 13 0x0d CR, carriage return, Control-M
016 14 0x0e SO, Control-N
017 15 0x0f SI, Control-O
020 16 0x10 DLE, Control-P
021 17 0x11 DC1, XON, Control-Q
022 18 0x12 DC2, Control-R
023 19 0x13 DC3, XOFF, Control-S
024 20 0x14 DC4, Control-T
025 21 0x15 NAK, Control-U
026 22 0x16 SYN, Control-V
027 23 0x17 ETB, Control-W
030 24 0x18 CAN, Control-X
031 25 0x19 EM, Control-Y
032 26 0x1a SUB, Control-Z

要怎麼把他拿掉?可以使用 tr 這個命令:

NAME
       tr - translate or delete characters

參數 -d, --delete
              delete characters in SET1, do not translate
 

$ tr -d "\015"

其他的符號也可類推操作

所以假如檔案 ginzan.txt 要移除 ^M ,下指令:

$ cat ginzan.txt | tr -d '\015' > newfile.txt

參考資料

[1] http://www.computing.net/answers/unix/how-to-delete-m-character-using-vi/2451.html


原文 2010-05-11 20:01:22

你可能感興趣的文章

[bc] linux 的計算機bc 如何進行8進位、10進位、16進位等轉換 linux 的計算機bc--如何進行8進位、10進位、16進位等轉換

[Linux] ls --color 的檔案特徵及顏色意義 ls --color 時看到的檔案特徵及顏色意義及和檔案權限有關的指令

[SSH] 解決 SSH 登入延遲,登入時驗證很慢的問題 登入要等很久,才會跳出輸入密碼的視窗,怎麼解決?

計算檔案數和目錄數 linux/freebsd等系統利用ls來計算檔案數和目錄數、只列出目錄的方法

[vi/vim] 如何讓 root 帳號的 vim 可以顯示顏色 如何讓 root 帳號的 vim 可以顯示顏色

[SIP] OPENSER LINUX版本安裝全記錄 [SIP] OPENSER LINUX版本安裝全記錄

[find] 活用 find 指令參數-exec 執行找到的結果 在linux/ freebsd 中查找檔案最強的就是 find,他有一個參數相當好用:-exec

[Linux] 進行字串取代,三種字串取代的方法 使用vi、sed、perl來取代字串

[CSH/TCSH] 使用tcsh SHELL #1 --變數、控制和迴圈 在FREEBSD或LINUX中使用TCSH SHELL,進行一些基本的指令操作。

時間和時區CST UTC GMT的說明及設定 時間和時區CST DST UTC GMT的說明設定,及php時間的設置

我有話要說


限制:留言最高字數1000字,超過部分會被截掉。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

為什麼要買長達二十年的保單? 為什麼要買長達二十年的保單?找一個可以說服我買二十年保單的理由。

UTF8中文字/全形一覽 快速查詢urf-8的中文字,共計13246中文字(5401常用字+7652罕用字+日文或編號),292全形符號,27半形符號。

精讚的版面變化 ▓此文僅作為舊文的記錄▓ 這篇文章為了紀念改版完成而撰寫。 原本的部落格是民國97年的作品,那時還是用舊有的技術來寫,很

詭異的創業思維 創業的思維中,有多少銀彈,有多少技術,有多少人脈,有多少時間等等,每個都要考慮進去,以熱忱建立的關係脆弱的像蘇打餅乾一樣..

[Centos6] 安裝wordpress Centos 6下安裝wordpress,非常簡單