开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第30天,点击查看活动详情
通过对diff的学习,发现还有许多与之相关联的
命令.下面一起看一下都有啥吧.
您能在这里看到啥
测试数据diffstat
测试数据
-
di1.txt -
di2.txt
diffstat
-
含义
diffstat命令是用来显示diff命令输出信息的直方图,是依赖diff比较结果,然后根据比较结果,统计各文件的增、删、改的差异计量.当然也可以使用|将diff命令输出的结果传给diffstat来显示.注意
如果比较的文件或者子目录不在当前目录下,就需要使用全路径.
-
语法
diffstat (选项) (参数) -
常用参数
标题 -f format指定直方图的格式:
为了简洁,只显示值和一个直方图代码insert(+)、delete(-)、modify(!)
1: 正常格式
2: 用点填充直方图
0: 使用直方图打印每个值-v显示进度,将输出重定向到文件.并把进度消息写入标准错误 -l仅显示文件名.不生成 直方图-c输出的每一行都以 #为前缀.内容为注释行-C添加 SGR颜色突出显示直方图-w设置输出时,每一列的宽度 -t以 代码标识重写直方图.并以逗号分隔.-o将输出的内容,重定向到新的文件里. 输出参数讲解
+: 插入内容-: 删除内容!: 修改内容
-
事例
-
默认参数diff di1.txt di2.txt | diffstat # 3 代表修改总次数 # ++ 代表2处插入 # - 代表1处删除 unknown | 3 ++- # 1 file changed # 1个文件发生修改 # 2 insertions(+) 2处插入 # 1 deletion(-) 1处删除 1 file changed, 2 insertions(+), 1 deletion(-) -
-f设置直方图的格式
-f 0从上面的输出,我们可以更直观的知道整体改变的直方图,以及各个状态的分布.diff di1.txt di2.txt | diffstat -f 0 unknown | 3 2 + 1 - 0 ! 1 file changed, 2 insertions(+), 1 deletion(-)-f 1diff di1.txt di2.txt | diffstat -f 1 unknown | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)-f 2iff di1.txt di2.txt | diffstat -f 2 unknown | 3 ++-............................................................. 1 file changed, 2 insertions(+), 1 deletion(-)
-
-c输出每行以
#开头 -
-C以
SGR颜色转义突出直方图 -
-l仅列出文件名
diff di1.txt di2.txt | diffstat -l unknown -
-tdiff di1.txt di2.txt | diffstat -t INSERTED,DELETED,MODIFIED,FILENAME 2,1,0,"unknown"从上面的输出结果,可以直观的知道代码标识对应的数字.及文件名字
-
-odiff di1.txt di2.txt | diffstat -o cdx.txt以上的命令的功效是,把
diffstat输出的内容写入到cdx.txt文件里.执行结果如下所示小提醒
如果
-o写入的文件不存在,就会自动创建你定义的文件.并写入命令执行结果.
-