【发布时间】:2016-04-07 12:24:01
【问题描述】:
首先,提前感谢您的帮助。
当 unix 文件中的新行 (\n) 没有以';'开头时,我需要用空格替换它们。
例如,如果您在 unix 文件中有类似的内容:
TestFields;TestFields2
;TestFields3;TestFields4
输出应该是:
TestFields;TestFields2 ;TestFields3;TestFields4
所以我正在使用这样的 sed 命令:
sed ':a;N;$!ba;s/[^;]\n/ /g'
问题是这个命令也会替换 \n 之前的字符,所以我的输出是这样的:
TestFields;TestFields ;TestFields3;TestFields4
我松开了“TestFields2”中的“2”.. 有人知道如何保留我的角色但替换 \n ?
【问题讨论】:
-
sed ':a;N;$!ba;s/\([^;]\)\n/\1 /g'