文件A用竖线分隔,有500万行:
600000002233199881|1000109668|2019-05-10|
600000002233199700|1000002681|2019-05-10|
600000002233199701|1000003390|2019-05-10|
文件B只有1列ID,1 k行:
1000002681
1000109668
如何从A文件中获取B文件中的ID以外的行?预期的输出是:
600000002233199701|1000003390|2019-05-10|
我通过下面的链接尝试了grep -Fwf fileB fileA
,但不适用于我的情况。我不知道如何将其更改为工作状态。
https://unix.stackexchange.com/questions/110645/select-lines-from-text-file-which-have-ids-listed-in-another-file
答案 0 :(得分:1)
要排除,您需要-v
标志。
尝试grep -Fvwf fileB fileA
。确保文件B的末尾没有空行。
$ cat fileA
600000002233199881|1000109668|2019-05-10|
600000002233199700|1000002681|2019-05-10|
600000002233199701|1000003390|2019-05-10|
$ cat fileB
1000002681
1000109668
$ grep -Fvwf fileB fileA
600000002233199701|1000003390|2019-05-10|
$