• Linux命令(九)比较文件差异 diff


    diff 命令介绍

    diff 命令的功能为逐行比较两个文本文件,列出其不同之处。对给出的文件进行系统的检查,并显示出两个文件中所有不同的行。如果 diff 命令后跟的是目录,则会对该目录中的同名文件进行比较,但不会比较其子目录。

    常用参数说明

    -a 预设只会逐行比较文本文件
    
    -b 忽略行尾的空格
    -B 不检查空白行
    
    -c 用上下文输出格式,提供 n 行上下文
    -C 执行与 -c 命令相同
    
    -d 使用不同的演算法,以较小的单位来做比较
    
    -f 输出的格式类似于ed 的script,但按照原来文件的顺序来显示不同处
    
    -H 比较大文件时可以加快速度
    
    -l 若比较的文件在某几行有所不同,而这几行同时都包含了选项中指定的字符或字符串,则不显示这两个文件的差异。
    
    -i 不检查大小写的不同
    -I 讲结果交由 pr 程序来分页
    
    -n 将比较结果以 RCS 的格式来显示
    -N 在比较目录时,若文件 A 仅出现在某个目录中,则预设会显示。
    
    -p 若比较的文件为 C语言 的程序源文件时,则预设会显示
    -P 与 -N 类似,但只有当第二个目录包含了包含了第一个目录中没有的文件按时,才会将这个文件与空白的文件比较。
    
    -q 仅显示有无差异,不显示详细信息
    
    -r 比较子目录中的文件
    
    -s 若没有发现任何差异,任然显示信息
    -S 在比较目录时,从指定的文件开始比较
    
    -t 在输出时将 tab 字符展开
    -T 在每行前面加上tab 字符以便对齐
    
    -u,-U 以合并的方式来显示文件内容的不同
    
    -v 显示版本信息
    
    -w 忽略全部的空格字符
    -W 在使用 -y 参数时,指定栏宽
    
    -x 不比较选项中指定的文件或目录
    -X 可以将文件或目录类型存成文本文件,然后指定此文本文件
    
    -y 以并列的方式显示文件的异同之处
    
    --help 显示帮助
    

    实例

    diff a.c  b.txt 
    diff a.c  b.txt | cat -n
    

    在上述结果中, 以 < 开头的行属于第一个文件,以 > 开头的行属于第二个文件,字母 a b c 分别表示 附加 删除 修改操作(上述结果中仅有c)。

  • 相关阅读:
    FastDFS概述及原理
    SpringBoot中使用Redis缓存注解
    SpringBoot中使用Redis
    Jedis
    Redis客户端
    Redis的集群配置
    Redis的复制
    英语笔记-5
    内网转发Ubuntu
    数学笔记-4
  • 原文地址:https://www.cnblogs.com/ay-a/p/8232584.html
Copyright © 2020-2023  润新知