如果下一行不以数字开头,则删除新行

jus*_*man 4 sed file

我有一个类似的文件

    1 test
    test

如何从中删除新行,以便最终输出变为:

1 test test

我已经尝试了一些sed但我无法使用它.

ssa*_*ota 5

这应该做的伎俩:

sed -n '$!{ 1{x;d}; H}; ${ H;x;s|\n\([^0-9]\)| \1|g;p}' inputfile
Run Code Online (Sandbox Code Playgroud)

输入:

1 test1
test1
2 test2
test2
test2
3 test3
4 test4
Run Code Online (Sandbox Code Playgroud)

输出:

1 test1 test1
2 test2 test2 test2
3 test3
4 test4
Run Code Online (Sandbox Code Playgroud)

  • 令人印象深刻的简洁 (2认同)