Com o GNU sed:
sed -e '/\[ssh\]/,+2{s/false/true/}' file
Com o POSIX sed:
sed -e '/\[ssh\]/n;n;s/false/true/' file
Eu tenho um arquivo jail.local
e tem seções como esta
[apache]
enabled = true
logpath = /var/log/apache/error.log
[ssh]
enabled = false
port = ssh
Eu quero
[ssh]
e enabled = false
para enabled = true
para que o novo texto seja lido
[ssh]
enabled = true
port = ssh
Eu olhei para usar sed
, mas não consegui entender os comandos necessários para contornar o fato de sed
ser bastante "por linha" orientada.
Como posso fazer essa substituição?
Tags bash text-processing sed