Sed multiline replacement question

爱⌒轻易说出口 提交于 2019-12-01 21:19:06

Try replacing the "\n" with \ and an explicit new line; like the following --

/"This/ {
N
s/"This *\n*too *\n*shall *\n*pass"/\
"This too shall pass"/
}

First join all lines, then insert a newline for the first " and then a pass through tr to single space everything (not that happy with the tr part...)

$ sed -e :a -e '$!N; s/\n/ /; ta ; s/"/\n"/' multiline_input | tr -s " "
And he said 
"This too shall pass"
perl -0777 -ne 's/\s+/ /g;s/"/\n"/;print "$_\n"'
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!