2016-04-26 85 views
0

我有一个在Linux上运行的每日进程,它返回一组失败的更新用户,并且需要从大用户csv中删除这些坏行以便导入数据库。根据输入文件从csv删除行

我的输出文件包含每个失败用户的USER_ID。 我试图创建一个更新的文件与这些删除。 我已经回顾了大量可用的示例,但似乎没有任何一个可以正常工作。我已经包含了错误文件和用户文件的示例。 第一行是一个标题,并且应该被忽略

我的错误文件:

"USER_ID" 
"CA781558" 
"LN764767" 

我的用户文件:

"USER_ID","FIRSTNAME","LASTNAME","LAST_ACTIVITY","GROUD_UID" 
"CA781558","Dani","Roper","2015-07-17 19:47:21","CF93DF0A-BD23AF87D20A" 
"BT055163","Alexis","Richardo","2016-04-19 21:23:08","CB71F91E-7E638292ABD5" 
"LN764767","Peter","Rajosz","2016-03-18 11:59:29","973C4AD2-63BA12BB91CD" 
"TN479717","Jerry","Alindos","2015-06-12 07:37:56","1DA745BA-71CB88AA91EA" 
"FR915163","Alexis","Richardo","2016-04-19 21:23:08","DBA8B91E-7A6B8292ABD5" 
"GB135767","Peter","Rajosz","2016-03-18 11:59:29","AE3C4AD2-63BA181B91CD" 
"SG839717","Jerry","Alindos","2015-06-12 07:37:56","1BA746BA-71CB88AA91EA" 

预期输出:

"USER_ID","FIRSTNAME","LASTNAME","LAST_ACTIVITY","GROUD_UID" 
"BT055163","Alexis","Richardo","2016-04-19 21:23:08","CB71F91E-7E638292ABD5" 
"TN479717","Jerry","Alindos","2015-06-12 07:37:56","1DA745BA-71CB88AA91EA" 
"FR915163","Alexis","Richardo","2016-04-19 21:23:08","DBA8B91E-7A6B8292ABD5" 
"GB135767","Peter","Rajosz","2016-03-18 11:59:29","AE3C4AD2-63BA181B91CD" 
"SG839717","Jerry","Alindos","2015-06-12 07:37:56","1BA746BA-71CB88AA91EA" 

你能帮帮我?谢谢你在前进

+1

**我已审查的实例,可以在众人**你有真正尝试过什么? – anubhava

+1

我的歉意。我昨天晚上直到凌晨才试图找到一个解决方案并且空白。我的输入和输出行数保持不变。 结果发现,我犯了一个错误,并且在更新中覆盖了我的主列表。从那一刻起,我的输出与输入相匹配。对这个问题抱歉。随意删除。 awk -F,'NR == FNR {a [$ 1]; next}!(a中的$ 1)'error.csv user.csv> output.csv –

回答

0

您可以使用awk这样的:

awk -F, 'FNR==NR{del[$1]; next} FNR==1 || !($1 in del)' err.txt file.txt 

"USER_ID","FIRSTNAME","LASTNAME","LAST_ACTIVITY","GROUD_UID" 
"BT055163","Alexis","Richardo","2016-04-19 21:23:08","CB71F91E-7E638292ABD5" 
"TN479717","Jerry","Alindos","2015-06-12 07:37:56","1DA745BA-71CB88AA91EA" 
"FR915163","Alexis","Richardo","2016-04-19 21:23:08","DBA8B91E-7A6B8292ABD5" 
"GB135767","Peter","Rajosz","2016-03-18 11:59:29","AE3C4AD2-63BA181B91CD" 
"SG839717","Jerry","Alindos","2015-06-12 07:37:56","1BA746BA-71CB88AA91EA"