Algo como isso deve funcionar:
awk -F, '$10 ~ /^[[:alnum:]]+$/ { count++ } END{ print count+0 }'
Como faço para a validação alfanumérica de uma coluna específica (digamos $2
) de um arquivo usando o awk?
Por exemplo, tentei:
awk -F, '{if ($10==(/[0-9a-zA-Z]/)) count+=1;} END {print count}' final.csv
Não recebo erros nem resultados.
Algo como isso deve funcionar:
awk -F, '$10 ~ /^[[:alnum:]]+$/ { count++ } END{ print count+0 }'
Você pode fazer:
awk '$10 ~ /^[0-9a-zA-Z]+$/ {count++} END{print count}' file
Isso também funciona para mim: verificar de 0
a z
, sendo todos os números e letras no intervalo.
awk '$10 ~ /^[0-z]+$/ {count++} END{print count}' file
A ideia é verificar se o campo especificado ( $10
no seu caso) é baseado apenas em um conjunto de caracteres alfanuméricos. Isso é feito usando ^
e $
para indicar o início e o fim do campo.
Tags awk