| 用途 | 两文件关联(过滤/映射/计数) |
|---|---|
| 语法 | awk 'NR==FNR{建索引; next} {处理}' 小文件 大文件 |
| 原理 | NR 累计行号、FNR 当前文件行号:第一个文件里两者相等 |
按列映射
按列映射
awk 'NR==FNR{a[$1]=$2; next} {print $1, a[$1]}' map.txt data.txt白名单过滤
白名单过滤
awk 'NR==FNR{ok[$1]; next} ($1 in ok)' allow.txt access.log分组计数
分组计数
awk 'NR==FNR{u[$1]; next} ($1 in u){n[$1]++} END{for(k in n) print k, n[k]}' users.txt logs.txt比 join 强:输入无需排序、输出格式自由;比 grep -f 强:能带出关联字段。