AWK
(assumindo o seu se imprimir o primeiro como está ok ):
Exemplo de arquivo input.csv
:
0001;4;5;30;33;41;52
0002;9;37;39;41;43;49
0003;10;11;29;30;36;47
0005;1;2;6;16;19;46
0006;7;13;19;22;40;47
0007;3;5;20;21;38;56
0008;1;5,6;27;42;59
0009;10;1;6;27;42;59
para condição para verificar se há uma linha faltando :
awk -F';' 'NR!=int($1){ printf "%04d is missing\n",NR; exit }' input.csv
A saída:
0004 is missing
para condição para verificar se todos os números sete são delimitados por ;
:
awk -F';' 'NF!=7{printf "Incorrect number of fields: %d on record %d\n",NF,NR; exit}' input.csv
A saída:
Incorrect number of fields: 6 on record 7