diffstat命令

diffstat命令根据diff的比较结果,统计各文件的插入、删除、修改等差异计量。

语法

diffstat [options] [files]

参数

  • -c: 输出的每一行都以作为前缀,使其成为Shell脚本的注释行。
  • -C: 添加SGR颜色转义序列以突出显示直方图。
  • -e: 将标准错误重定向到file
  • -f <num>: 指定直方图的格式,0仅显示插入+,删除-或修改!的值和单个直方图代码,1正常输出,2用点填充直方图,4用直方图打印每个值,任何非零值都会给出直方图,点和单个值可以组合。
  • -H: 打印使用情况消息并退出。
  • -k: 禁止合并报告中的文件名。
  • -l: 仅列出文件名,不生成直方图。
  • -n <file length>: 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
  • -o <file>: 将标准输出重定向到file
  • -p <file length>: 与-n参数相同,但此处的<file length>包括了文件的路径。
  • -r: 提供对直方图所示数据的可选舍入,而不是通过误差调整来截断,0是默认值,不进行舍入,但累积的错误将添加到以下列,1舍入数据,2对数据进行舍入并调整直方图,以确保即使有差异通常会四舍五入也存在差异。
  • -t: 覆盖直方图,生成逗号分隔值的输出。
  • -u: 禁止在报告中对文件名进行排序。
  • -v: 显示进度,例如如果将输出重定向到文件,则将进度消息写入标准错误。
  • -w: 指定输出时栏位的宽度。
  • -V: 显示版本信息。

示例

统计diff的比较结果的差异信息。

diff file.txt file2.txt | diffstat -v

统计diff的比较结果的差异信息,仅列出文件名,不生成直方图。

diff file.txt file2.txt | diffstat -l

统计diff的比较结果的差异信息,指定直方图的最大宽度。

diff file.txt file2.txt | diffstat -w 11

每日一题

https://github.com/WindrunnerMax/EveryDay

参考

https://man.linuxde.net/diffstat
https://www.runoob.com/linux/linux-comm-diffstat.html
https://www.tutorialspoint.com/unix_commands/diffstat.htm

diffstat命令的更多相关文章

  1. Linux 文件管理命令语法、参数、实例全汇总(一)

    命令:cat   cat 命令用于连接文件并打印到标准输出设备上. 使用权限 所有使用者 语法格式 cat [-AbeEnstTuv] [--help] [--version] fileName 参数 ...

  2. Linux文本过滤常用命令(转)

    01 cat命令 通常用来显示文本文件的内容 一般用来查看比较短的文本文件,因为其缓冲区有限 -s选项可以用来合并文件中多余的空行,多个空行将被压缩为一个空行; -n选项可以显示行号 -b选项可以跳过 ...

  3. Linux命令-文件管理(一)

    Linux命令-文件管理(一) 1.命令:cat cat命令用于把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案) 使用权限:所有使用者 语法格式:cat [-AbeEn ...

  4. diff两个文件夹里的东西

    diff --help -x, --exclude=PAT               exclude files that match PAT 排除某个类型的文件 -u, -U NUM, --uni ...

  5. Linux Shell编程与编辑器使用详解

    <Linux Shell编程与编辑器使用详解> 基本信息 作者: 刘丽霞 杨宇 出版社:电子工业出版社 ISBN:9787121207174 上架时间:2013-7-22 出版日期:201 ...

  6. Git-历史穿梭

    图形工具:gitk gitk是最早实现的一个图形化的Git版本库浏览器软件,基于tcl/tk实现,因此gitk非常简洁,本身就是一个1万多行的tcl脚本写成的.gitk的代码已经和Git的代码放在同一 ...

  7. Linux基础命令---diffstat

    diffstat 这个程序读取diff的输出,并显示每个文件的插入.删除和修改的直方图.Diffstat是一个用于检查大型复杂修补程序文件的程序.它从包含diff输出的一个或多个输入文件中读取,生成针 ...

  8. Linux常用命令大全

    系统信息 arch 显示机器的处理器架构(1)  uname -m 显示机器的处理器架构(2)  uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIO ...

  9. Git常用命令总结

    Git常用命令总结 git init      在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.   git clone ...

  10. Mac命令行

    参考:http://www.cnblogs.com/-ios/p/4949923.html 必读 涵盖范围: 这篇文章对刚接触命令行的新手以及具有命令行使用经验的人都有用处.本文致力于做到覆盖面广(尽 ...

随机推荐

  1. Android生成SHA1(证书指纹)

    去到jdk所在目录 C:\Program Files (x86)\Java\jdk1.8.0_73\bin 输入命令: keytool -list -v -keystore mykey.keystor ...

  2. [转帖]麒麟v10上部署TiDBv5.1.2生产环境的最佳实践

    https://tidb.net/book/tidb-monthly/2022/2022-07/usercase/tidb-v5-1-2 前言​ 笔者最近在一个银行项目中做 PoC 测试,由于客户选择 ...

  3. [转帖]Shell if 条件判断

      Shell  语言中的if条件 一.if的基本语法: if [ command ];then    符合该条件执行的语句 elif [ command ];then    符合该条件执行的语句 e ...

  4. [转帖]SQL Server超过了每行的最大字节数(8060)的原因和解决办法

    一.现象     出现这种错误都发生在SQL语句建表时,错误提示: "警告: 已创建表 'XXXX,但其最大行大小(10438)超过了每行的最大字节数(8060).如果结果行长度超过 806 ...

  5. open,os模块的常用函数

    一.open用于读写文件 1.open的基本语法 : open(file,mode,buffering,encoding,errors.........),open中有如下几个参数,一般情况 下我们只 ...

  6. Linux策略路由详解

    概述 在Linux中,我们通常使用route命令来做路由信息的管理.但是该命令仅仅只能用于基本路由信息的管理,面对功能更加强大的基于策略的路由机制,route命令就显得捉襟见肘.在传统路由算法中,只能 ...

  7. js中的宏任务和微任务详细讲解

    微任务有哪些 Promise await和async 宏任务有哪些 setTimeout setInterval DOM事件 AJAX请求 看下面的代码 <script> console. ...

  8. AsNoTracking()非跟踪数据 查询

    刚开始学习使用EF ,做项目时需要查询数据将数据显示在datagrid中,使用如下方法: query是IQueryable的 在一次看别人写的代码的时候,发现了AsNoTracking()这个方法,并 ...

  9. @RequestBody中使用@DateTimeFormat报错:JSON parse error: Expected array or string.; nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException

    原因分析 根据异常提示:不匹配输入异常,指输入的参数错误,说是只支持String类型和Array数组类型的. @PostMapping("/test") public Dto ge ...

  10. Linux 应用Kickstart部署系统

    Kickstart 是一种无人值守系统安装方式,其工作原理是预先把原本需要运维人员手工填写的参数保存成文件,当安装过程中需要填写参数时则自动匹配Kickstart生成的文件,所以只要文件内包含了安装过 ...