看板 Linux 關於我們 聯絡資訊
各位前輩好, 因為我想將unix文件轉成dos模式(加入carrige return),但不能用unix2dos指令。 在網路上找到以下的sed方式: sed 's/$'"/`echo \\\r`/" file > output 可以用,但我實在看不懂這段語法…有人可以幫忙解釋一下嗎? 還是說以我的需求還有更簡單好懂的取代方式?(sed/awk/tr?) 先謝謝了。 ----- Sent from JPTT on my iPhone -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.12.19.116 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1606733659.A.CA7.html
bitlife: 檔案數量少or多? 為何無法用unix2dos? 能用cc嗎? 11/30 20:04
cozycat: `echo \\\r` -> $(echo \\r) -> \r 11/30 20:18
cozycat: sed 's/$/\r/' file > output 11/30 20:24
holishing: 你是在什麼神奇環境... 12/01 01:25
kenduest: 系統上有 vim 嗎, 有的話這個問題也很好處理 12/01 02:15
alloc: 是在開發板環境,每次只有單個檔案,無unix2dos也無cc。有 12/01 10:26
alloc: 這需求是要解決SMTP server回傳bare LFs的錯誤,需要寫在程 12/01 10:26
alloc: 式裡自動化轉換。 12/01 10:26
bitlife: 既然是開發板,就編一個陽春的unix2dos過去用不就好了? 12/01 10:48
bitlife: 只需要幾行的c程式,效能(cpu,ram,速度)也比用sed等來得好 12/01 10:49
bitlife: 我指的是自行撰寫幾行code,不是拿現成的unix2dos來編 12/01 10:50
alloc: 當初就只想到利用現有的文字取代工具來做,因為信的內容不 12/01 11:19
alloc: 長,效能應不會相差太多,謝謝你的回覆。@@ 12/01 11:19
Gold740716: sed 's/$/\r/' 就好,那個 echo 多此一舉 12/01 20:01