【发布时间】:2012-01-18 09:27:20
【问题描述】:
我有一个从工具输出的文件(从数据库查询)。其中一个字段在某些行的末尾有 ^M 个字符。这会导致我的输出损坏。当前行以 ^M 结尾时,如何将下一行附加到当前行。
我的机器安装了 sed、awk、perl、ruby 和 python,我正在使用 bash。
我使用 sed 尝试了以下操作:
sed -e :a -e '/^M$/N; s/^M\n//; ta' sourcefile > destfile
但这没有用。
请指教。
谢谢, 卡西克 S.
【问题讨论】:
-
如果您对在 GNU sed 中需要替换或匹配哪些字符有疑问,请查看此
sed -n 'l0' file的输出 -
我想我应该以更好的方式提及文件格式。很抱歉没有早点这样做:我的文件格式为:L1F1|L1F2|L1F3|L1F4|L1F5| L2F1|L2F2|L^M 2^M F3|L2F4|L2F5|我需要它的格式:L1F1|L1F2|L1F3|L1F4|L1F5| L2F1|L2F2|L2F3|L2F4|L2F5|希望这有助于清除它。