![过滤或标记块](https://linux22.com/image/132413/%E8%BF%87%E6%BB%A4%E6%88%96%E6%A0%87%E8%AE%B0%E5%9D%97.png)
我有一条带有消息的短信:
[:DNS-Google G1 G2 G3 N1 N2 N3 ]
[:VD-Share S1 S2 S3 F1 F2 F3 ]
我需要 grep 块,例如:当我 grepAAA-谷歌,输出将是:
G1 G2 G3 N1 N2 N3
当我 grep VD-Share 时,这将是相同的
过滤块的内容!
答案1
这将帮助您完成大部分工作:
awk -v pattern='\\[:...-Google' '
$1 == "]" {p = 0}
p {print}
$1 ~ pattern {p = 1}
' file
您只需要弄清楚如何将变量放入零件中即可-v pattern="XYZ"
。