如何$2
使用 awk 对文件的特定列(例如 )执行字母数字验证?
例如我尝试过:
awk -F, '{if ($10==(/[0-9a-zA-Z]/)) count+=1;} END {print count}' final.csv
我没有收到任何错误或结果。
答案1
像这样的东西应该有效:
awk -F, '$10 ~ /^[[:alnum:]]+$/ { count++ } END{ print count+0 }'
答案2
你也许可以这样做:
awk '$10 ~ /^[0-9a-zA-Z]+$/ {count++} END{print count}' file
这对我也适用:检查从0
到z
,是范围内的所有数字和字母。
awk '$10 ~ /^[0-z]+$/ {count++} END{print count}' file
这个想法是检查给定字段($10
在您的情况下)是否仅基于一组字母数字字符。这是通过使用^
和$
来指示字段的开始和结束来完成的。