一尘不染

如何从另一个文件A中删除文件B上显示的行?

linux

我有一个大 文件A (由电子邮件组成),每封邮件一行。我还有另一个 文件B ,其中包含另一组邮件。

我将使用哪个命令从文件A中删除文件B中出现的所有地址。

因此,如果文件A包含:

A
B
C

文件B包含:

B    
D
E

然后,将文件A保留为:

A
C

现在,我知道这是一个可能会经常被问到的问题,但是我只在线找到了一条命令,该命令给我一个错误的分隔符错误。

任何帮助将非常感激!肯定会有一个聪明的人选,但是我不是shell专家。


阅读 262

收藏
2020-06-02

共1个答案

一尘不染

如果文件已排序(在您的示例中):

comm -23 file1 file2

-23禁止显示两个文件中或仅文件2中的行。如果未对文件进行排序,sort请先通过管道…

此处查看手册页

2020-06-02