用 awk 查表连接两个文件

在一次流式处理中用映射表丰富数据文件。

Linux文本脚本命令行低风险
用 NR==FNR 把查找文件读入数组,再打印数据文件中的匹配值。

01命令

命令
$ awk 'NR==FNR{a[$1]=$2;next} {print $1, a[$1]}' map.txt data.txt

02作用说明

这一 awk 惯用法把第一个文件装入关联数组,并实时连接第二个文件,即使文件很大也只需一遍、内存适中。它替代临时脚本,是使用 shell 的经典理由。

03风险

风险低风险
使用条件Preinstalled on Linux (GNU awk)
!注意: 键的格式必须完全一致;大小写或空白差异会静默产生空白。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

最后验证: 2026-10-13 · 分类: 开发者

06相关方案