linux diff对比文件

【自取】最近整理的,有需要可以领取学习:

diff 是 Unix 系统的一个命令,用来比较两个文本文件的差异。一般用法:

$diff file1 file2

具体参数可以查询 man diff

diff 有三种输出格式

  • 正常格式(normal diff)
  • 上下文格式(context diff)
  • 合并格式(unified diff)

git diff 输出的格式是最后一种。

第一行表示结果为 git 格式的 diff。

第二行表示两个版本的GIT的哈希值,后六位是对象的模式(普通文件,644权限)。

[En]

The second line represents the hash values of the two versions of git, and the last six digits are the mode of the object (normal file, 644 permissions).

“—”表示变动前的文件,”+++” 表示变动后的文件。

更改的位置以两个@开始和结束。

[En]

The position of the change begins and ends with two @.

前面的“-4,6”分为三个部分:第一个文件的减号,第四行的减号,六个连续行的“6”。总而言之,这意味着以下是第一个文件的六个连续行,从第4行开始。类似地,“+4re7”意味着更改后,它将成为第二个文件,其中有七个连续行从第4行开始。

[En]

The preceding “- 4jue 6” is divided into three parts: the minus sign for the first file, “4” for line 4, and “6” for six consecutive lines. Taken together, it means that the following are six consecutive lines of the first file starting at line 4. Similarly, “+ 4re7” means that after the change, it becomes the second file with seven consecutive lines starting at line 4.

它同时显示两个文件的上下文,因此被称为“合并格式”。每行的第一个标志位为空,表示没有变化,减号表示第一个文件删除的行,加号表示添加到第二个文件的新行。

[En]

It displays the context of the two files together, so it is called “merge format”. The first flag bit of each line, empty indicates no change, the minus sign indicates the line deleted by the first file, and the plus sign indicates the new line added to the second file.

公共参数

[En]

Common parameters

” -b ” 忽略空格
” -B ” 忽略空行
” -i ” 忽略大小写
” -c ” 显示文件所有内容并标示不同
” -r ” 对比目录
” -u ” 合并输出
输出结果解释

[En]

Output result interpretation

diff 比较结果的含义,diff 描述两个文件不同的方式是告诉我们怎么样改变第一个文件之后与第二个文件匹配。
a = add
c = change
d = delete
带 < 的部分表示左边文件内容
中间-是两个文件内容的分隔符号。

[En]

The middle-is the delimited symbol of the contents of the two files.

带 > 的部分表示右边文件内容

[En]

原文链接:https://blog.csdn.net/qq_47714288/article/details/121612424

Original: https://www.cnblogs.com/youxin/p/16389088.html
Author: youxin
Title: linux diff对比文件

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/7028/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Windows下配置Redis多实例

    方法一:新建目录创建Redis实例 1.将你的redis安装目录复制一份,命名为Redis6380 2.用命令行CMD工具进入到该目录下 3.执行创建redis6380服务的命令:…

    Linux 2022年9月14日
    0190
  • 一篇长文说 git 基础

    版本管理在产品级开发中是非常重要的一个部分,它涉及到团队协作,且影响到产品最终的发布、上线以及测试环节,当前最流行的版本控制系统是 git。git 内容非常多,本文尽量克制地来介绍…

    2022年8月30日
    0740
  • Kali Linux上以root身份运行PlayOnLinux

    安装PlayOnLinux &#x3000;&#x3000;apt-get install playonlinux 以root身份运行PlayOnLinux遇到一条…

    Linux 2022年8月24日
    0330
  • Linux下scp的用法

    scp 对拷文件夹 和 文件夹下的所有文件 对拷文件并重命名 对拷文件夹 (包括文件夹本身) scp -r /home/wwwroot/www/charts/util root@1…

    2022年8月24日
    0390
  • git命令(11):合并本地分支到远程分支

    假设: dev是主分支 dev_local 是本地分支 1、创建本地分支: git checkout -b dev_local 或在之前的本地分支上拉取最新数据 git pull …

    Linux 2022年8月30日
    0230
  • 解决GitHub加载和下载慢问题

    主要是通过修改HOSTS来,解决GitHub加载和下载慢问题。 修改HOSTS文件: 在”C:\Windows\System32\drivers\etc” …

    Linux 2022年8月30日
    0340
  • .gitignore == git添加忽略不生效解决方案

    把某些目录或文件加入忽略规则,发现并未生效,原因是.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的…

    Linux 2022年8月30日
    0330
  • 记一次小团队Git实践(上)

    公司规模不大,成立之初,选择了svn作为版本控制系统。这对于用惯了git的我来说,将就了一段时间后,极为不爽,切换到git-svn勉强能用。随后,因为产品需要发布不同的版本,而gi…

    Linux 2022年8月30日
    0280
  • linux安装wkhtmltox

    1、下载安装wkhtmltox系统环境 这里我的系统环境是CentOS 6-64bit 所以选择:Linux CentOS 6 – 64bit 下载下来后是一个rpm包 [wkht…

    Linux 2022年8月20日
    0810
  • zabbix 自带linux监控模板监控cpu load不准

    修改模板(Template OS Linux)–项目–Processor load (1 min average per core)–键值: 把…

    Linux 2022年8月26日
    0250
  • 如何使用CMake构建c++项目

    1. c++项目构建与CMake简介 在Windows系统上我们通常使用 Visual Studio(VS)来生成我们的c++项目。我们只需在VS相应的层次目录中添加相应的文件即可…

    Linux 2022年9月10日
    0250
  • Linux下修改mysql的root密码

    一、知道原来的myql数据库的root密码; 1、 在终端命令行输入 mysqladmin -u root -p password "新密码" 回车 ,Ente…

    Linux 2022年8月24日
    0310
  • Gitee整改之思考

    本文主要内容如下: 1.Gitee是什么? 2.Gitee与Github的区别有哪些? 3.为什么要使用Gitee? 4.Gitee的商业模式是怎样的? 5.Gitee为何会被整改…

    Linux 2022年8月30日
    0250
  • linux redis 三种启动方式

    nohup redis-server & 2.通过指定配置文件启动可以为redis服务启动指定配置文件,例如配置为/etc/redis/6379.conf进入redis根目…

    Linux 2022年8月11日
    0470
  • CTFHub_2017-赛客夏令营-Web-weakphp(git泄露、MD5绕过)

    进入场景,显示如下 查看writeup,发现本题是.git源码泄露(很多题目这个git目录都是禁止访问,我也不知道大佬怎么知道是.git源码泄露的) 要获取泄露的源码,可以使用 G…

    Linux 2022年8月30日
    0270
  • 常用的分布式锁和redis和zk两种分布式锁的对比

    常用的分布式锁 一、基于数据库实现分布式锁 1. 悲观锁 利用select … where … for update 排他锁 注意: 其他附加功能与实现一基…

    Linux 2022年9月14日
    0190
  • git命令之git clone用法

    在使用git来进行版本控制时,为了得一个项目的拷贝(copy),我们需要知道这个项目仓库的地址(Git URL). Git能在许多协议下使用,所以Git URL 可能以ssh://…

    Linux 2022年8月30日
    0360
  • Kubernetes 使用kubeadm创建集群

    实践环境 CentOS-7-x86_64-DVD-1810 Docker 19.03.9 Kubernetes version: v1.20.5 开始之前 1台Linux操作或更多…

    Linux 2022年9月10日
    0230
  • 杂谈:我是怎么去定制ubuntu-live-cd的?

    如题。 我为什么要定制? 首先就是原始的livecd不适合我,他觉得自己普适了,也满足他自己的意图了,可用户(我)的呢? 体积偏大! 还进入安装界面! 启动过程满满的各种服务、消息…

    Linux 2022年8月26日
    0280
  • Git 远程删除分支后,本地 git branch -a 依然能看到的解决办法

    使用 git branch -a 命令可以查、看所有本地分支和远程分支(git branch -r 可以只查看远程分支)。发现很多在远程仓库已经删除的分支在本地依然可以看到。 $ …

    Linux 2022年8月30日
    0260
  • Linux-进程描述符 task_struct 详解

    为了描述控制进程的运行,系统中存放进程的管理和控制信息的数据结构称为进程控制块 PCB(Process Control Block),它是进程实体的一部分,是操作系统中最重要的记录…

    Linux 2022年8月24日
    0280
  • 4 Git 基础 撤消操作

    撤消操作 在任何时候,你都可能需要撤销你刚刚做过的事情。接下来,我们将介绍一些与撤消操作相关的基本命令。请注意,某些撤消操作是不可逆的,因此请注意,如果您犯了错误,可能会丢失一些工…

    Linux 2022年8月30日
    0290
  • Linux 段页式内存管理

    分段机制 分段(Segmentation):这种方法是人们最开始使用的一种方法,基本思路是将程序所需要的内存地址空间大小的虚拟空间映射到某个物理地址空间。 每个程序都有其独立的虚拟…

    Linux 2022年8月26日
    0220
  • Linux xargs命令

    xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理。通常情况下,xargs从管道或者stdin中读取…

    Linux 2022年8月26日
    0250
  • linux下iproute2与net-tools

    net-tools 很多系统管理员依然通过组合使用诸如ifconfig、route、arp和netstat等命令行工具(统称为net-tools)来配置网络功能,解决网络故障。ne…

    Linux 2022年8月11日
    0290
  • Linux平台Boost 1.6.7的编译方法

    编译: 1. 获得bjam (1) # cd /usr/src/boost_1_67_0 (2) # ./bootstrap.sh 该方法直接在Boost 源代码目录下生成bjam…

    Linux 2022年8月24日
    0310

发表回复

登录后才能评论
免费咨询
免费咨询
扫码关注
扫码关注
联系站长

站长Johngo!

大数据和算法重度研究者!

持续产出大数据、算法、LeetCode干货,以及业界好资源!

2022012703491714

微信来撩,免费咨询:xiaozhu_tec

分享本页
返回顶部