首页 > 解决方案 > 如何检查一个文件中的字段是否不包含 UNIX 中另一个文件中的值列表

问题描述

我有两个文件,一个具有该列的交易价值的数据。假设货币代码和另一个文件具有有效/预期的货币代码。

文件1:

ID|col1|curr_cd

1|abc|印度卢比

2|定义|美元

3|xyz|3AB

4|tuv|ABC

……

文件2

curr_cd

印度卢比

美元

加元

……

我需要那些无效的值列表,这意味着存在于 File1 中但不存在于 File2 中。File1 可能包含数百万个事务,因此我需要一个 AWK 或一个可以更快地为我提供结果的命令。

任何人都可以在这里帮助我。

标签: unix-text-processing

解决方案


# Returns whole row
fgrep -vf file_2 file_1

# Returns just the bad value
fgrep -vf file_2 file_1 | awk -F '|' '{print $2}'

推荐阅读