如何使用 awk 对文件的特定列(例如 $2)进行字母数字验证?

use*_*676 5 awk

如何$2使用 awk 对文件的特定列(例如)执行字母数字验证?

例如我试过:

awk -F, '{if ($10==(/[0-9a-zA-Z]/)) count+=1;} END {print count}' final.csv
Run Code Online (Sandbox Code Playgroud)

我没有收到任何错误或结果。

Chr*_*own 6

这样的事情应该工作:

awk -F, '$10 ~ /^[[:alnum:]]+$/ { count++ } END{ print count+0 }'
Run Code Online (Sandbox Code Playgroud)

  • @yeti 是的,他们这样做。任何符合 Posix 的 `awk` 都知道这一点。 (3认同)
  • 请强调您正在使用 GAWK。原始 AWK 没有 `[:alnum:]` 和朋友。 (2认同)