以下两个文件包含可用的构建名称和版本号:
服务器.txt
Build2 200
Build3 100
Build1 400
Build7 200
本地.txt
Build1 300
Build2 200
Build3 100
在我的情况下,两个列表不一定按顺序排列或具有相同数量的值。
如果本地值与服务器值相同,则构建为“已更新”。如何创建一个输出来显示输出是“已更新”还是“已过期”,如下例所示:
Build2 Updated
Build3 Updated
Build1 Out-of-date
Build7 Out-of-date
答案1
典型的解决方案awk
:
awk '
NR==FNR { k[$1] = $2; next }
{ print $1, (k[$1] == $2) ? "Updated" : "Out-of-date" }
' local.txt server.txt