我有一个如下所示的输入 file.txt
ABC
Job: Farmer
DEFG
Job: Plumber
Job: Teacher
GHIJ
我想将包含 Job 的所有行合并为一行,如下所示
ABC
Job: Farmer,Plumber,Teacher
DEFG
GHIJ
我尝试了以下方法,但没有帮助
sed '$!N;/作业:/s/\n/,/file.txt
最佳答案
使用 GNU sed
$ sed -Ez ':a;s/(Job: )(.*)\1([^\n]*)\n/\1\3,\2/;ta' input_file
ABC
Job: Plumber,Teacher,Farmer
DEFG
GHIJ
关于unix - sed 命令合并具有相同关键字的两行或多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75591776/