gpt4 book ai didi

bash - 使用 awk(或 sed)根据下一行的第一个字符删除换行符

转载 作者:行者123 更新时间:2023-11-29 08:54:51 28 4
gpt4 key购买 nike

这是我的情况:我有一个大文本文件,我想从中提取某些信息。我用 sed 提取了所有基于正则表达式的相关信息,但是我提取的每条“信息”都在单独的一行上,我希望每条“记录”都在自己的行上,以便可以轻松导入一个数据库。
这是我现在的数据示例:

92831,499,000
,0644321
79217,999,000
,5417178
,PK91622
,PK90755

理想情况下,我希望此输出看起来像:

92831,499,000 ,0644321
79217,999,000 ,5417178 ,PK91622
79217,999,000 ,5417178 ,PK90755

这可能更难做到,所以我会满足于最后一个“记录”的输出只出现一次,附加的“PK ...”是该行的第 4 个“字段”。
最后,我能想到的最简单的方法是,如果该行以逗号 (^,) 开头,则换行符应该被删除……不过我对 awk 不太熟悉所以如果你能给我一个从此开始,我们将不胜感激!谢谢!

最佳答案

$ perl -0pe 's/\n,/,/g' < test.dat92831,499,000,064432179217,999,000,5417178,PK91622,PK90755

翻译:不分行地批量阅读,将换行符后的每个逗号换成一个逗号。

这里是最短的代码!

关于bash - 使用 awk(或 sed)根据下一行的第一个字符删除换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2208059/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com