如何实现两个文件相减的功能(剔除)

摘要:缺陷是这个只要匹配(file1字符串包含file2)就行,而不是全部相等


例子:file1:

1      ww
2      mm
3      df
4       df
5       sf
6       as
7       jk
8       mk
a       kl
b       lk
c       kk
d       ll
file2:
d      ll
c      kk
2      mm

结果:file1-file2:去除掉file2中的行



grep -vFf file2 file1

命令分析:grep。它功能更强,可以通过-G、-E、-F命令行选项来使用egrep和fgrep的功能。

-f StringFile 指定包含字符串的文件。

-v反向




1、统计两个文本文件的相同行

grep -Ff file1 file2


2、统计file1中有,file2中没有的行  file1-file2

grep -vFf file2 file1


扩展: grep

grep从当前目录搜索模式
egrep(在linux中是grep -E)是扩展的grep,诸如+ ? | 和() 之类的正则表达式元字符可以使用。
fgrep(在linux中是grep -F)是固定或者快速的grep,行为上像grep,但是不识别任何正则表达式元字符作为特定字符。

第一个字段是模式,无论是字符串还是文件
第二个是待处理的文件


原文地址:https://www.cnblogs.com/catkins/p/5270645.html