Livrar-se de uma linha com uma correspondência perfeita (não substring) usando sed

1

Eu quero excluir uma linha que corresponda à palavra name , mas não exclua as linhas que a seguem. Eu não consigo encontrar uma resposta para isso. Eu sei que sed -i '/name/d' * excluiria toda a linha que combina a palavra name , mas isso não é o que eu quero. Um exemplo esclarecerá minha pergunta. Se a entrada for -

 name xav
 name lmn
 name
 name abc

Em seguida, a saída deve ser -

 name xav
 name lmn
 name abc

basicamente, a linha com name e nada mais deve ser excluída. O resto precisa ficar.

    
por Zzrot 03.05.2016 / 23:10

1 resposta

4

Ancore o texto na regex

sed -i '/^name$/d'
    
por 03.05.2016 / 23:15