linux – 比较两个Unix文件之间的列值
作者:互联网
档案A.
Table SAPSR3./1BEA/BBEA_BDH has no BasicFile LOB columns
Table SAPSR3./1BEA/BBEA_BDI has no BasicFile LOB columns
Table SAPSR3./1BEA/BBEA_DLI has no BasicFile LOB columns
Table SAPSR3./1BEA/CNPL_PDL has no BasicFile LOB columns
Table SAPSR3./1BEA/CNPL_PLH has no BasicFile LOB columns
Table SAPSR3./1BEA/CNPL_PLI has no BasicFile LOB columns
SAPSR3.RSEUMOD has more than 255 columns
档案B.
SAPSR3.TERCL2
SAPSR3.TERCL3
SAPSR3.CRM_ACE_UCC
SAPSR3.CRMIOBJCONT
SAPSR3.CRMORDERCONT
SAPSR3.CRMD_WEBREQ_CONT
SAPSR3.CRMIBASECONT
SAPSR3.CRMD_UIF_SYSINDX
SAPSR3.CRMISMCONT
我需要将FileA的第二列与FileB进行比较.如果没有找到,我必须将整行fileA打印到新的fileC中,否则(如果找到)然后打印整行以及连接的字符串为“found”.
同样来自文件B,必须将第1列与FileA 2nd列进行比较.如果未找到,则必须将搜索此字符串(fileB的第一列)与“需要分析”连接的结果打印到fileC中.
解决方法:
使用惊人的工具awk:
awk 'FNR==NR{a[$2]=$3;next}{print $0,a[$2]?a[$2]:"NeedToBeAnalayzed"}' fileA fileB > fileC
标签:linux,text-processing 来源: https://codeday.me/bug/20190814/1655480.html