使用鉴别器连接多行
我有这样的输入 输入
:
a,b,c
d,e,f
g,h,i
k,l,m
n,o,p
q,r,s
我希望能够使用像“|”这样的鉴别器连接行
输出:
a,b,c|d,e,f|g,h,i
k,l,m|n,o.p|q,r,s
该文件有 100 万行,我希望能够像前面的示例一样连接行。
关于如何解决这个问题有什么想法吗?
I have the input like this
Input:
a,b,c
d,e,f
g,h,i
k,l,m
n,o,p
q,r,s
I wan to be able to concatenate the lines with a discriminator like "|"
Output:
a,b,c|d,e,f|g,h,i
k,l,m|n,o.p|q,r,s
The file has 1million lines and I want to be able to concatenate lines like the example before.
Any ideas about how to approach this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
@OP,如果你想
用 Perl 每 3 条记录对它们进行分组,
@OP, if you want to group them for every 3 records,
with Perl,
由于您的标签包含
sed
这里是一种使用它的方法:Since your tags include
sed
here is a way to use it:呆呆地:
gawk:
如果 Perl 没问题,你可以尝试:
运行:
If Perl is fine, you can try:
to run:
使用
paste
,我们将这些行连接在一起,然后然后 sed 将它们切块。该模式抓取 3 个管道终止字段,并用换行符替换它们各自的最终管道。使用 Perl:
With
paste
, we join the lines together, and thensed
dices them up. The pattern grabs runs of 3 pipe-terminated fields and replaces their respective final pipes with newlines.With Perl: