diff 输出解释
diff
最原始的 diff
我们先编写两个文件:
f1:
1
2
3
4
5
6
7
8
9
f2:
1
2
3
4
5
66
7
8
9
然后我们进行比较:
diff f1 f2
6c6
< 6
---
> 66
第一部分
6c6
:表示变动的位置- 第一个
6
表示文件 f1 的第 6 行有变化 c
表示变动模式是change
(变更)。除了change
外,变动模式还有add
(新增)和delete
(删除)- 第二个
6
表示变动后变成 f2 的第 6 行
- 第一个
第二行
< 6
和 f1 相关。<
表示要从 f1 当中去除该行,后面的6
表示该行的内容第三行
---
用来分割 f1 和 f2 的内容第四行
> 66
和 f2 相关。>
表示 f2 增加了该行,后面的66
表示该行的内容
context diff
显示上下文模式的 diff
上下文各显示 3 行
diff -c f1 f2
*** f1 Mon Mar 11 21:05:01 2024
--- f2 Mon Mar 11 21:04:56 2024
***************
*** 3,9 ****
3
4
5
! 6
7
8
9
--- 3,9 ----
3
4
5
! 66
7
8
9
- 第一部分
*** f1 Mon Mar 11 21:05:01 2024
:文件名和时间***
表示变动前的文件---
表示变动后的文件
- 第三行的星号
***************
是分隔符 - 分隔符下的第二部分第一段:
***
表示变动前的文件3,9
表示下面的内容是该文件的第 3 到 9 行- 每行前面的标记位,
+
表示该行为新增,!
表示该行有改动,-
表示该行被删除
- 分隔符下的第二部分第二段:
---
表示变动后的文件
unified diff
合并模式的 diff
diff -u f1 f2
:
--- f1 2024-03-11 21:08:41
+++ f2 2024-03-11 21:08:40
@@ -3,7 +3,7 @@
3
4
5
-6
+66
7
8
9
- 第一部分
--- f1 2024-03-11 21:08:41
:文件名和时间---
表示变动前的文件+++
表示变动后的文件
- 第二部分
@@ -3,7 +3,7 @@
:表示变动的位置-3,7
:-
号表示变动前的文件,3,7
表示从第 3 行开始的连续 7 行+3,7
:表示变动后的文件的从第 3 行开始的连续 7 行
- 第三部分:变动的具体内容,上下文各显示 3 行
- 标志位
-
表示第一个文件删除的行 - 标志位
+
表示第二个文件新增的行
- 标志位
附:git 版本的 diff
git diff
diff --git a/f1 b/f1
index 6f8a38c..449b072 100644
--- a/f1
+++ b/f1
@@ -3,7 +3,7 @@
3
4
5
-6
+66
7
8
9
- 第一部分
diff --git a/f1 b/f1
:diff --git
表示这是 git 版本的 diffa/f1 b/f1
表示进行比较的是 a 版本的 f1(即变动前)和 b 版本的 f1(即变动后)
- 第二部分
index 6f8a38c..449b072 100644
:index xxx..xxx
表示两个版本的 git 哈希值(index 区域的6f8a38c
对象,与工作目录区域的449b072
对象进行比较)100644
是对象的模式(普通文件,644 权限)
- 后面的部分与 unified 模式相同
diff 输出解释的更多相关文章
- 《The Linux Command Line》 读书笔记03 ls命令与长格式输出解释 文件权限
ls命令与长格式输出解释 文件权限 ls命令 ls 命令用于列出目录内容,不带参数时列出当前工作目录的内容,也可以指定目标目录(可以指定多个),列出目标目录下的内容. ls命令的参数 ls -l 长格 ...
- 【转】top命令输出解释以及load average 详解及排查思路
https://blog.csdn.net/zhangchenglikecc/article/details/52103737 昨天nagios报警warning,没来得及留下报警截图,nagios值 ...
- top命令输出解释以及load average 详解及排查思路
原地址: https://blog.csdn.net/zhangchenglikecc/article/details/52103737 1.top输出以及load average 详解 昨天nagi ...
- linux diff具体解释
diff是Unix系统的一个非常重要的工具程序. 它用来比較两个文本文件的差异,是代码版本号管理的基石之中的一个.你在命令行下,输入: $ diff <变动前的文件> <变动后的文件 ...
- Linux面试必问-对照目录内容的命令“Diff”具体解释
dir1下有个log_1.log dir2下有个log_2.log 两个文件例如以下: p_ylwu@VM_194_111_sles10_64:/home/jdxochen/exercise> ...
- [系统资源]/proc/meminfo和free输出解释
High Level statistics RHEL 5, RHEL 6 and RHEL 7 MemTotal: Total usable memory MemFree: The amount of ...
- Linux ps -ef 命令输出解释
UID: 程序拥有者PID:程序的 IDPPID:程序父级程序的 IDC: CPU 使用的百分比STIME: 程序的启动时间TTY: 登录终端TIME : 程序使用掉 CPU 的时间CMD: 下达的 ...
- Linux下diff的操作详解
总述 Linux diff命令用于比较文件的差异.diff以逐行的方式,比较文本文件的异同处.特别是比较两个版本不同的文件,如果指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子 ...
- svn diff 详解
UI版: 如果多人编辑同一段代码,常常容易出现冲突的情况: 如果出现冲突,我们如何解决他呢? 1 可以选择使用自己的文件mime file,也可以使用 他们的文件 their file 2 解决冲突, ...
- diff输出格式解析
1 命令格式 $diff <变动之前的文件> <变动之后的文件> 2 diff文件的三种格式 normal diff context diff unified diff 3 示 ...
随机推荐
- 抓取豆瓣电影TOP250标题-年份-评分-评分人数
import csv import re import requests headers = { 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; ...
- 全国产T3+FPGA的SPI与I2C通信方案分享
近年来,随着中国新基建.中国制造2025规划的持续推进,单ARM处理器越来越难胜任工业现场的功能要求,特别是如今能源电力.工业控制.智慧医疗等行业,往往更需要ARM + FPGA架构的处理器平台来实现 ...
- 女朋友问我 LB 是谁?
科普一下 LB(负载均衡)技术 我的编程导航网站:www.code-nav.cn 大家好,我是鱼皮. 周末在家写代码,无意中跟女朋友提了下 LB,还说 LB 好的呱呱叫. 她笑了笑,问我 LB 是谁? ...
- [oeasy]python0096_游戏娱乐行业_雅达利_米洛华_四人赛马_影视结合游戏
游戏娱乐行业 回忆上次内容 游戏机行业从无到有 雅达利 公司 一枝独秀 并且带领 行业 发展起来 雅达利公司 优秀员工 乔布斯 在 朋友 帮助下完成了<pong> Jobs 黑了 Woz ...
- 机器学习:详解迁移学习(Transfer learning)
详解迁移学习 深度学习中,最强大的理念之一就是,有的时候神经网络可以从一个任务中习得知识,并将这些知识应用到另一个独立的任务中.所以例如,也许已经训练好一个神经网络,能够识别像猫这样的对象,然后使用那 ...
- 入门到精通rsync和inotify
rsync 作用: 实现文件的备份 备份位置可以是当前主机,也可以是远程主机 备份过程可以是完全备份,也可以是增量备份 功能: 1)类似于cp的复制功能 将本地主机的一个文件复制到另一个位置下 2)将 ...
- 学术写作: These authors contributed equally to this work. —— 共同一作
早些年很少看到论文里面有: These authors contributed equally to this work. 不过现在这种方法在论文中出现的还是比较多的,说白了,这种共同一作的声明其实是 ...
- 小米(xiaomi)自动驾驶技术的原始技术积累 —— CyberDog 仿生四足机器狗
相关: https://www.youtube.com/watch?v=f0q8tfZ89Qo 小米公司一直没有加入到制造电动车的行列中,直到几年前才感觉造车是必须要走的路了,但是造车就一定是要造电动 ...
- ffpyplayer源码编译报错:ffpyplayer/tools.pyx:182:28: Cannot assign type 'void (*)(void *, int, const char *, va_list) except * nogil' to 'void (*)(void *, int, const char *, va_list) noexcept nogil'
编译ffpyplayer报错,具体错误如标题. 报错信息: ffpyplayer/tools.pyx:182:28: Cannot assign type 'void (*)(void *, int, ...
- baselines算法库common/tile_images.py模块分析
该模块只有一个函数,全部内容: import numpy as np def tile_images(img_nhwc): """ Tile N images into ...