Contar número de separadores em linhas CSV e número da linha de impressão

0

Temos um arquivo CSV com mais de 50000 linhas. Este é apenas um exemplo do conteúdo:

Dcccrev,wefrwvfr,rfregt,wr4f,rfvrv,ecxwec,ecfrv,rfrf
Grge,gtgr,frfrv,gthtgv,gerg5tgvrt,rvrfvtg,tgt,frfrf,rfrf
Drfrfr,t,tgtg,rf,rgr,grtg,tgt,gtgtg,rg
.
.
.

Minha tarefa é: quando o número de separadores "," em uma linha não é igual a 7, o número da linha deve ser impresso.

É possível criar um awk ou perl one liner para esta tarefa, sem usar echo ou cat?

    
por yael 28.02.2017 / 15:28

1 resposta

1

Experimente awk -F, '{if (NF != 8) print NR}' file_name . O -F, é um separador de campo. Com 7 vírgulas existem 8 campos (NF Number Fields) e NR é (Number Record) o número atual do registro.

    
por 30.04.2017 / 00:41

Tags