【发布时间】:2011-03-16 09:40:35
【问题描述】:
我搜索了高低,希望你能帮助我。我需要在文件中找到不以双引号 (") 开头的每一行,并将该行附加到上一行。
我已经使用以下命令成功地做到了这一点:
cat 文件名.csv | sed -e :a -e '$!Ns/\n[^"]//;ta -e 'P;D' > newfilename.csv
我的问题是替换。正如您所期望的那样,在该行附加到上一行之后,第一个字符被删除。我需要它不要被删除。我试过了 猫文件名.csv | sed -e :a -e '$!Ns/\n[^"]/&/;ta -e 'P;D' > newfilename.csv
但它只是挂起。我认为与号 (&) 会复制匹配的行。
输入:
"line 1
<line 2>
现有或第一个 sed 命令的输出是:
lineline2> ** 注意删除了
我需要输出为line1<line2>
非常感谢您提供的任何帮助!
【问题讨论】:
标签: sed append substitution