Nos meus arquivos de log (*.log) desejo substituir todas as ocorrências de:
"INFO=*",
para
"INFO=*;;;",
onde *
poderia estar qualquer coisa.
Então, por exemplo, "INFO=1234",S
-> "INFO=1234;;;",S
Existe uma maneira de fazer isso com sed ?
Responder1
Use parênteses de captura para lembrar a parte alterada na string:
sed -i~ 's/\("INFO=[^"]*\)",/\1;;;",/' *.log
Talvez seja necessário adicionar um g
no final se ocorrer mais de um INFO por linha.
Isso não funcionará se * contiver aspas duplas.