encontre linhas que não terminem com 'rpms' com sed

1

Eu gostaria de encontrar linhas que não terminem com 'rpms' com sed no Linux.

Eu tentei abaixo:

sed -ne '/?!(rpms$)/p'

Mas, infelizmente, isso não está correto.

    
por user159722 05.03.2016 / 16:09

1 resposta

3

Uma maneira de fazer isso no sed é:

  • não imprime linhas por padrão ( -n )
  • procura pelo padrão fornecido ( /rpms$/ )
  • e imprimir somente se o padrão não for correspondido ( ! )

colocando tudo junto:

sed -n '/rpms$/ !p'

Para obter mais informações, aqui está um tutorial de demonstração , vinculado à seção pertinente sobre a reversão do correspondência de padrões.

Alternativamente, em sed, você poderia

  • imprimir linhas por padrão
  • , mas exclua linhas correspondentes ( d )

Colocando isso juntos:

sed '/rpms$/ d'
    
por 05.03.2016 / 17:39