San*_*ero 13 sed text-manipulation
我需要帮助使用sed来评论匹配的行和它后面的4行.在文本文件中.
我的文本文件是这样的:
[myprocess-a]
property1=1
property2=2
property3=3
property4=4
[anotherprocess-b]
property1=gffgg
property3=gjdl
property2=red
property4=djfjf
[myprocess-b]
property1=1
property4=4
property2=2
property3=3
Run Code Online (Sandbox Code Playgroud)
我希望在所有带有文本'[myprocess'的行和前面有4行的预期输出前面加上#:
#[myprocess-a]
#property1=1
#property2=2
#property3=3
#property4=4
[anotherprocess-b]
property1=gffgg
property3=gjdl
property2=red
property4=djfjf
#[myprocess-b]
#property1=1
#property4=4
#property2=2
#property3=3
Run Code Online (Sandbox Code Playgroud)
非常感谢您对此的帮助.
Fle*_*exo 18
您可以通过将正则表达式应用于一组行来执行此操作:
sed -e '/myprocess/,+4 s/^/#/'
Run Code Online (Sandbox Code Playgroud)
这与"myprocess"和后面的4行匹配.对于这4行,然后在行的开头插入一个'#'.
(我认为这可能是一个GNU扩展 - 它不是我知道的任何"sed one liner"备忘单)