将换行符添加到与模式匹配的所有短语

时间:2014-08-13 17:25:05

标签: sed

假设我的文本文件看起来像foobar foo bar foobar barfoo。 我需要在bar的前面添加一个新行(注意'bar'之前和之后的空格)

换句话说,运行sed命令后,我希望看到这个

foobar foo
bar foobar barfoo

我尝试了以下内容,但都没有奏效! sed -r's / bar / \ nbar /;' sed -r's /(bar)/ \ nbar /;'

1 个答案:

答案 0 :(得分:2)

这应该有效:

$ sed -r 's/ (bar )/\n\1/' file
foobar foo
bar foobar barfoo

如果一行中有多个条形,则可以为全局替换添加g标记。