Procura e substitui texto e tudo o que segue na mesma linha

0

Como posso procurar por uma determinada string em vários arquivos (com uma determinada extensão) em um diretório e substituir tudo posteriormente (incluindo a string de pesquisa) por uma string em branco?

Exemplo

Estou procurando por 'mystring'

O arquivo contém:

foo bar mystring bar foo

Estou tentando acessar:

foo bar
    
por Dan 28.06.2012 / 15:50

2 respostas

4
sed -i "s/mystring.*//" <filename>

-i faz o inline substituto (ou seja, infile == outfile). Sem -i o resultado da substituição seria impresso em stdout.

    
por 28.06.2012 / 16:19
2

Se você não precisa trabalhar em arquivos em subdiretórios recursivamente,

perl -p -i -e 's/mystring.*//' *.ext
    
por 28.06.2012 / 16:03