如何编写快速shell脚本以匹配linux中的以下内容。我尝试了各种grep命令组合,sed命令但没有成功。 “消息”部分可以重复任意次。 “消息”本身的内容将是通用的,但固定为下面显示的格式。我希望输出类似于:
x: y
x1: y1
x: y
x1: y1
x: y
x1: y1
输入:
Posting to abcd
message {
a {
x : y
x1 : y1
}
}
message {
a {
x : y
x1 : y1
}
}
message {
a {
x : y
x1 : y1
}
}
答案 0 :(得分:1)
这可能适合你(GNU sed):
sed '/^message {/,/^}/{/[{}]/d;s/^\s*//}' file
在块message {
到}
中,删除包含{
或}
的所有行,然后从后续行的开头删除任何空格。< / p>