ZBLOG

awk -F '\t' 'NR==FNR{a[$1]=$0;next}NR>FNR{if($1 not in a)print $1}' /home/disk1/importer_test/1708396500/diff_test/run_env/importer_new/result/pc/1/data.new.sort data.old.sort > data.old.uniq 详细解释这个命令

这个命令使用awk来处理两个文件,并输出不在第一个文件中的特定字段。

让我们逐步解释这个命令:

awk -F '\t' 'NR==FNR{a[$1]=$0;next} NR>FNR {if($1 not in a) print $1}' /home/disk1/importer_test/1708396500/diff_test/run_env/importer_new/result/pc/1/data.new.sort data.old.sort > data.old.uniq
  • -F '\t':设置字段分隔符为制表符(\t)。
  • 'NR==FNR{a[$1]=$0;next}:当正在处理的行数等于当前文件中的行数时,执行该块。将第一个文件 data.new.sort 的每一行以第一个字段作为键,整行内容作为值存储在关联数组 a 中。
  • NR>FNR {if($1 not in a) print $1}:当正在处理的行数大于当前文件中的行数时,执行该块。对于第二个文件 data.old.sort 的每一行,如果其第一个字段不在关联数组 a 的键中,则打印该字段。
  • /home/disk1/importer_test/1708396500/diff_test/run_env/importer_new/result/pc/1/data.new.sort data.old.sort:指定需要处理的两个输入文件,即先读取 data.new.sort 文件再读取 data.old.sort 文件。
  • > data.old.uniq:将输出结果重定向到名为 data.old.uniq 的文件中。

因此,该命令的目的是从第二个文件 data.old.sort 中找出不在第一个文件 data.new.sort 中的特定字段,并将结果存储在 data.old.uniq 文件中。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://sdn.0voice.com/?id=2888

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?