• Linux | 详解 diff 命令的使用方法


    在这里插入图片描述

    概述

    diff 是linux下的重要命令之一,可以逐行比较文本文件的差异,与cmpcomm命令不同的地方是,它可以告诉我们一个文件中的哪些行需要更改,以使两个文件相同。

    diff 命令中,有一些特殊的符号需要记牢:

    a : add
    c : change
    d : delete

    diff 语法

    diff [options] File1 File2
    
    • 1

    我们有两个名为 a.txt 和 b.txt 的文件,其中包含我们喜欢的水果。
    在这里插入图片描述

    不加选项

    如果直接使用diff不加任何选项,那么结果是:
    在这里插入图片描述
    输出结果告诉我们:需要更改第一个文件中的第三行到第五行,才能与第二个文件相等。

    添加选项

    Linux 系统提供了两种不同的方式来查看 diff 命令的输出,即上下文模式和统一模式。

    上下文模式

    要查看上下文模式中的差异,请使用-c 选项。让我们通过例子来理解这一点,我们有两个文件 a.txt 和 b.txt:
    在这里插入图片描述

    ***代表第一个文件,---代表第二个文件,*************** 这个代表的是分割线。

    这个输出的前两行显示了关于文件1和文件2的信息。它列出了每个文件的文件名、修改日期和修改时间。

    分割线显示两个文件具体不同的地方, 感叹号表示不同。

    统一模式

    要在统一模式下查看差异,请使用-u 选项。它类似于上下文模式,但不显示任何冗余信息或以简洁的形式显示信息。
    在这里插入图片描述
    与上下文模式不同的地方是,第一个文件由---表示,第二个文件由+++表示。 这个输出的前两行显示了关于文件1和文件2的信息。它列出了每个文件的文件名、修改日期和修改时间。

    @@里面-代表的是第一个文件,+ 代表第二个文件,后面跟的是行号。输出结果告诉我们:第一个文件减去 avocado、cherry、coconut,并且加上date、durian、grape、grapefruit才能与第二文件相同。

    补充

    diff在默认情况下是忽略大小写的,如果要对大小写敏感需要添加选项-i。若要查看diff版本信息可以使用下面的命令:

    在这里插入图片描述

  • 相关阅读:
    一文看懂Filter过滤器
    Mybatis做批量操作
    php mysql摄影网_图片分享网站
    Linux文件--文件命名规则
    Elasticsearch系列之:Centos7安装部署Elasticsearch详细步骤
    个人教学网站设计
    【微搭低代码】小程序实现图片的上传和下载
    基地址:环境变量
    挑战自己,编程你的五子棋:Python+Pygame实践经验分享
    文件分割与合并
  • 原文地址:https://blog.csdn.net/alexwei2009/article/details/127613052