Bash将两条特定的行合并为一条

时间:2019-07-22 13:40:23

标签: regex bash perl sed

我有一个包含两行重复出现的行的文件。

line1
     line2
line1
     line2
line1
     line2

我要合并它们,以便输出文件看起来像:

line1 line2
line1 line2
line1 line2

不幸的是,我没有成功。 在记事本++中,我可以执行以下操作:

search: (line1)(\r\n)
replace: \1

我想在这里做同样的事情,

sed -E 's/(line1)(\n)/\1/' my_file

不起作用

2 个答案:

答案 0 :(得分:1)

您可以为此使用pastetr

cat file | paste -d" " - - | tr -s ' '

line1 line2
line1 line2
line1 line2

答案 1 :(得分:1)

(H,W,144)与整行不匹配。您可以在浆模式下使用sed

perl

perl -0777 -pe 's/(line1)\R+\h+/$1 /g' file
相关问题