Como apagar linhas no arquivo de texto que contém três campos duplicados (strings sep por espaços)

0

Eu tenho um arquivo de texto longo da seguinte forma (gerado a partir de links de download e nomes de arquivos baixados):

file01 48976 5873987 48976 48976 thdshiesde
file02 29876 589845637 29876 29876 uyjedrty 54
file03 38745 58934 99432 38745 hytug 48

etc.

Eu quero excluir as linhas que têm os campos 2, 4 e 5 duplicados.

Do exemplo acima, quero produzir:

file03 38745 58934 99432 38745 hytug 48

etc.

(As duas primeiras linhas contêm os campos duplicados necessários para a exclusão, enquanto a terceira linha não é mantida).

Alguma sugestão?

    
por speld_rwong 13.12.2016 / 05:49

1 resposta

5

O AWK faz isso de forma trivial:

awk '!($2 == $4 && $4 == $5)'
    
por 13.12.2016 / 06:16