Como obter as linhas que têm maior comprimento entre todas as linhas no arquivo usando o comando awk [duplicate]

1

Eu quero aquela linha do arquivo que tem maior comprimento entre todas as linhas usando o comando awk .

    
por Shah Honey 28.04.2018 / 16:25

2 respostas

0

awk '{ if (length($0)>maxlength) { maxlength=length($0); longest_line=$0; } };
     END { print longest_line; }' inputfile
    
por 28.04.2018 / 17:35
0

Verifique o comprimento da linha (se nenhum argumento foi passado para a função length , ele usa $ 0, a linha inteira).

Onde o comprimento for maior que a variável x , defina x para o comprimento. E defina a variável a para o conteúdo da linha.

Finalmente, ao chegar ao final do arquivo, imprima o conteúdo da variável a .

awk 'length>x{x=length;a=$0}END{print a}' inputfile

Experimente on-line!

    
por 28.04.2018 / 17:38

Tags