Eu quero excluir especificamente minha string de saída do grep do arquivo de texto [duplicate]

3

Sou um pouco novo no Linux e tenho um problema. Eu tenho um arquivo de texto chamado file_a.txt meu primeiro comando

grep -A 12 ".production =" file_a.txt

A saída é de poucos blocos. Cada bloco de string contém 13 linhas

Eu quero excluir especificamente todo o bloco de strings que recebi com o grep comando do arquivo original file_a.txt Eu não quero enviar o grep saída para um novo arquivo. Também não quero usar grep -v porque não funciona no meu caso.

Eu tentei algo assim, mas nada está funcionando:

cut < grep -A 12 ".production =" file_a.txt

sed -i '/grep -A 12 ".production ="/d' file_a.txt

    
por Community 09.10.2012 / 12:32

2 respostas

6

Acho que você está procurando por isso:

sed -i '/.production =/,+12d' file_a.txt

Quando o sed encontra seus padrões, "exclui" 12 linhas

(aviso, modifica file_a.txt no local )

    
por 09.10.2012 / 12:36
2
sed -i '/\.production =/,+12d' file_a.txt

faria o trabalho

    
por 09.10.2012 / 12:38

Tags