两个文件内容比较comm、diff、grep

现象

系统先给了一个文件A,后因为有新增记录,又给了一个文件B,现在要通过A、B找出这部分新增记录

讲知识

通过查找,主要有三个Linux命令可以使用:

comm A B
diff A B
grep -f A B
comm

comm是对两个已经有序的文件进行比较,可以比较输出:仅在A中出现的、仅在B中出现的、在两个文件中都存在的。


直接使用comm的话会输出三列,第一列为A独有的、第二列为B独有的、第三列为C独有的,如果在comm后面加数字,则指明不展示这一列。

常用参数:

comm -1 A B 不显示在A文件中独有内容(显示B文件独有内容+两个文件共有)
comm -2 A B 不显示在B文件中独有内容
comm -3 A B 不显示同时在两个文件中都存在的内容
comm -12 A B 显示A与B公共的部分
comm -23 A B 显示A独有的
comm -13 A B 显示B独有的

comm --help

用法:comm [选项]... 文件1 文件2
逐行比较已排序的文件文件1 和文件2。

如果不附带选项,程序会生成三列输出。第一列包含文件1特有的行,第二列包含文件2特有的行,而第三列包含两个文件共有的行。

-1 不输出文件1 特有的行
-2 不输出文件2 特有的行
-3 不输出两个文件共有的行

--check-order 检查输入是否被正确排序,即使所有输入行均成对
--nocheck-order 不检查输入是否被正确排序
--output-delimiter=STR 依照STR 分列
--help 显示此帮助信息并退出
--version 显示版本信息并退出

Note, comparisons honor the rules specified by 'LC_COLLATE'.

示例:
comm -12 文件1 文件2 只打印在文件1 和文件2 中都有的行
comm -3 文件1 文件2 打印在文件1 中有,而文件2 中没有的行。反之亦然。

diff

diff是比较两个文件之间的不同,给出使两个一致的建议,diff有前后顺序,前面的为旧文件,后面的为新文件

常用参数:

diff A B  直接显示两个文件不同,并给出修改一致的建议(主要是对旧文件的建议)
diff -c A B  通过显示两个文件上下文,给出两个文件增减或删除信息,同时也会显示两个文件的修改时间
diff -y A B  模拟将屏幕分成两部分,显示B文件增加或删除的信息

使用diff A B时,对输出的说明:

1a2
> a

说明:B文件中新增了数据为a的第二行,需要把B的第二行添加(a)到A的第一行之后,以使两文件保持一致
要添加的行,用>标识,>指向新文件

4d5
< e

说明:A文件中第四行被删除(d),需要把A中该行删除
要删除的行,用<标识,<指向旧文件

6c7,9
< g
---
> h
> h
> i

说明:A中第六行被替换(c)成了B中的7-9行,需要将A的第六行内容进行替换

grep

grep主要用于查找过滤,使用<code>grep -f -v</code>可进行文件比较

grep -v -f a b  从b中剔除a中有的

总结

由于文件过大,不能进行排序,所有直接pass掉了comm……
由于只是想将新增记录输出,diff命令未找到合适的方法,放弃……
grep貌似可以,但由于文件太大了,报了个grep: Memory exhausted……
最终将俩文件入了数据库,通过数据库提取出了新增的记录0.0

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,723评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,003评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,512评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,825评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,874评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,841评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,812评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,582评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,033评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,309评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,450评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,158评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,789评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,409评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,609评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,440评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,357评论 2 352

推荐阅读更多精彩内容

  • 第1章 小试牛刀 $ 是普通用户,# 表示管理员用户 root。 shebang:#!。sharp / hash ...
    巴喬書摘阅读 6,333评论 1 4
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,246评论 9 467
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,157评论 2 33
  • 本人是一枚结构设计师,在设计院从事建筑结构设计工作。从业5年多,最近工作时时长想到一些设计中遇到的点,于是打算在简...
    MonoCookie阅读 182评论 0 0
  • 从家里逃出来,我的尾巴还在锥心疼痛。难过看着自己原本柔顺美丽的尾巴已经被烧得乌黑光秃,如果不是院中的一缺缸水,也许...
    梦俣文阅读 213评论 0 5