diff和patch

62 篇文章 56 订阅
56 篇文章 1 订阅

一、diff和patch
diff命令是linux上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方,常用于svn和git中。diff会在命令行中打印每一个行的改动。diff程序的输出称为补丁(patch),patch命令可以根据diff的输出将a.c的内容更新为b.c的内容,或者是将b.c的内容还原成a.c的内容。

二、diff命令介绍
1、命令格式:diff option 文件1 文件2
常用option:
-b:不检查空格字符的不同
-B:不检查空行的不同
-c:显示全部内容,并标出不同之处
-i:不检查大小写的不同
-p:若比较文件是C语言文件时,显示差异所在的函数名称。
-q:仅显示有无差异,不显示详细信息
-u:以合并的方式显示文件内容的不同
-y:以并列的方式显示文件的异同之处

例1:
这里写图片描述

例2:
这里写图片描述

例3:
这里写图片描述

2、分屏显示文件差异:
命令:vimdiff 文件1 文件2
例:
这里写图片描述

三、patch命令介绍
diff A B > C //生成A和B的补丁文件
patch A C //给A打上补丁,使得A文件变成B文件
patch -R B C //让B还原成A文件

例:
这里写图片描述

四、文件合并工具paste
命令格式:paste option 文件…
option:
-s:一般在合并的时候是平行处理的,即合并完之后同一行的内容还在同一行。使用-s选项可以进行串列合并,即同一行的内容处于同一列。
-d:因为文件合并时默认是一列一列的合并,可以用-d指定列合并的分隔符。

例:
这里写图片描述

例2:使用串列合并
这里写图片描述

例3:将分隔符改成”#”
这里写图片描述

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值