Como substituir string em arquivos usando asterisco no formulário de busca

1

Nos meus arquivos de log (* .log), quero substituir toda a ocorrência de:

"INFO=*",

para

"INFO=*;;;",

onde * pode ser qualquer coisa.

Então, por exemplo, "INFO=1234",S - > "INFO=1234;;;",S Existe uma maneira de fazer isso com sed?

    
por hudi 05.11.2015 / 14:00

1 resposta

2

Use parênteses de captura para lembrar a parte que está mudando na string:

sed -i~ 's/\("INFO=[^"]*\)",/;;;",/' *.log

Você pode precisar adicionar um g no final se mais de uma INFO ocorrer por linha.

Isso não funcionará se * contiver aspas duplas.

    
por 05.11.2015 / 14:10