zoukankan      html  css  js  c++  java
  • 【Linux常用工具】1.1 diff命令的三种格式


    diff是用来比较两个文本文件的差异的工具,它有三种格式,下面用实例介绍一下:

    准备三个测试文件1.txt 2.txt 3.txt

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ cat 1.txt
    姓名:毕小朋
    年龄:保密
    性别:公的
    博客:blog.csdn.net/wirelessqa
    微博:www.weibo.com/wirelessqa
    邮箱:wirelessqa.me@gmail.com
    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ cat 2.txt
    姓名:毕小朋
    年龄:28
    性别:公的
    博客:blog.csdn.net/wirelessqa
    微博:www.weibo.com/wirelessqa
    邮箱:wirelessqa.me@gmail.com
    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ cat 3.txt
    姓名:毕小朋
    年龄:保密
    性别:公的
    QQ:782670627
    博客:blog.csdn.net/wirelessqa
    微博:www.weibo.com/wirelessqa
    邮箱:wirelessqa.me@gmail.com
    


    说明:1.txt跟2.txt相比内容有修改,1.txt跟3.txt相比3.txt内容有增加,3.txt与1.txt相比内容有所减少

    一. 正常格式的diff

    格式:$ diff <变动前的文件> <变动后的文件>

    内容改变(c,代表change)

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ diff 1.txt 2.txt
    2c2
    < 年龄:保密
    ---
    > 年龄:28
    


    小解其意:
    2c2表示文件1第二行内容改变,变动后变为文件2的第二行,c表示内容改变

    < 年龄:保密 表示该行被去除
    --- :分享符
    > 年龄:28 : 增加了该行,“年龄:28 ”是内容

    "增加"(a,代表addition)

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ diff 1.txt 3.txt
    3a4
    > QQ:782670627

    "删除"(d,代表deletion)

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ diff 3.txt 1.txt
    4d3
    < QQ:782670627

    二. 上下文格式的diff

    格式:$ diff -c <变动前的文件> <变动后的文件>

    说明:-c表示:content

    内容改变(change)


    "增加"(+)

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ diff -c 1.txt 3.txt
    *** 1.txt     Mon Aug 12 22:54:56 2013
    --- 3.txt     Mon Aug 12 23:08:08 2013
    ***************
    *** 1,6 ****
    --- 1,7 ----
      姓名:毕小朋
      年龄:保密
      性别:公的
    + QQ:782670627
      博客:blog.csdn.net/wirelessqa
      微博:www.weibo.com/wirelessqa
      邮箱:wirelessqa.me@gmail.com

    "删除"(-)

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ diff -c 3.txt 1.txt
    *** 3.txt     Mon Aug 12 23:08:08 2013
    --- 1.txt     Mon Aug 12 22:54:56 2013
    ***************
    *** 1,7 ****
      姓名:毕小朋
      年龄:保密
      性别:公的
    - QQ:782670627
      博客:blog.csdn.net/wirelessqa
      微博:www.weibo.com/wirelessqa
      邮箱:wirelessqa.me@gmail.com
    --- 1,6 ----

    三. 合并格式的diff

    如果两个文件相似度很高,那么上下文格式的diff将显示大量重复的内容,很浪费空间,"合并格式"的diff就是将两个文件的上下文合并在一起显示


    格式:$ diff -u <变动前的文件> <变动后的文件>

    内容改变

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ diff -u 1.txt 2.txt
    --- 1.txt     2013-08-12 22:54:56.000000000 +0800
    +++ 2.txt     2013-08-12 22:56:19.000000000 +0800
    @@ -1,5 +1,5 @@
     姓名:毕小朋
    -年龄:保密
    +年龄:28
     性别:公的
     博客:blog.csdn.net/wirelessqa
     微博:www.weibo.com/wirelessqa
    

    小解其意:
    ---表示变动前的文件
    +++表示变动后的文件
    开始行和结束行都用@@
    它将两个文件的上下文,合并显示在一起,所以叫做"合并格式"。每一行最前面的标志位,空表示无变动,减号表示第一个文件删除的行,加号表示第二个文件新增的行。

    "增加"(+)

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ diff -u 1.txt 3.txt
    --- 1.txt     2013-08-12 22:54:56.000000000 +0800
    +++ 3.txt     2013-08-12 23:08:08.000000000 +0800
    @@ -1,6 +1,7 @@
     姓名:毕小朋
     年龄:保密
     性别:公的
    +QQ:782670627
     博客:blog.csdn.net/wirelessqa
     微博:www.weibo.com/wirelessqa
     邮箱:wirelessqa.me@gmail.com

    "删除"(-)

    bixiaopeng@bixiaopengtekiMacBook-Pro ~$ diff -u 3.txt 1.txt
    --- 3.txt     2013-08-12 23:08:08.000000000 +0800
    +++ 1.txt     2013-08-12 22:54:56.000000000 +0800
    @@ -1,7 +1,6 @@
     姓名:毕小朋
     年龄:保密
     性别:公的
    -QQ:782670627
     博客:blog.csdn.net/wirelessqa
     微博:www.weibo.com/wirelessqa
     邮箱:wirelessqa.me@gmail.com
    



  • 相关阅读:
    20100720 14:14 转:BW十日谈之标准数据源
    BW会计年度期间转换出错
    SQL Server 2005 Logon Triggers 详细介绍
    作业输出文档维护
    windows 系统监视器 以及建议阀值
    linkedserver 的使用
    DAC 连接数据库需要做些什么
    SQL Server 2008新特性 Merge 详细见联机手册
    【20110406】提高数据库可用性需要注意的问题
    索引迁移
  • 原文地址:https://www.cnblogs.com/pangblog/p/3257991.html
Copyright © 2011-2022 走看看