作者alloc (大碗卤肉饭男孩)
看板Linux
标题[问题] 看不太懂这行sed的语法(取代unix2dos功
时间Mon Nov 30 18:54:15 2020
各位前辈好,
因为我想将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://webptt.com/cn.aspx?n=bbs/Linux/M.1606733659.A.CA7.html
1F:推 bitlife: 档案数量少or多? 为何无法用unix2dos? 能用cc吗? 11/30 20:04
2F:推 cozycat: `echo \\\r` -> $(echo \\r) -> \r 11/30 20:18
3F:→ cozycat: sed 's/$/\r/' file > output 11/30 20:24
4F:推 holishing: 你是在什麽神奇环境... 12/01 01:25
5F:→ kenduest: 系统上有 vim 吗, 有的话这个问题也很好处理 12/01 02:15
6F:→ alloc: 是在开发板环境,每次只有单个档案,无unix2dos也无cc。有 12/01 10:26
7F:→ alloc: 这需求是要解决SMTP server回传bare LFs的错误,需要写在程 12/01 10:26
8F:→ alloc: 式里自动化转换。 12/01 10:26
9F:→ bitlife: 既然是开发板,就编一个阳春的unix2dos过去用不就好了? 12/01 10:48
10F:→ bitlife: 只需要几行的c程式,效能(cpu,ram,速度)也比用sed等来得好 12/01 10:49
11F:→ bitlife: 我指的是自行撰写几行code,不是拿现成的unix2dos来编 12/01 10:50
12F:→ alloc: 当初就只想到利用现有的文字取代工具来做,因为信的内容不 12/01 11:19
13F:→ alloc: 长,效能应不会相差太多,谢谢你的回覆。@@ 12/01 11:19
14F:推 Gold740716: sed 's/$/\r/' 就好,那个 echo 多此一举 12/01 20:01