指令 diff patch

本文详细介绍了diff和patch两个指令的使用方法。diff用于生成补丁包,通过指定参数可以控制补丁包的内容形式;patch则用于应用这些补丁到指定文件上,支持多种参数来精确控制补丁的应用位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


patch 和diff指令的用法:


这两个指令的作用是相反的,diff是用来生成补丁包的,而patch是用来打补丁的。


1. diff指令用法


 diff -c a b > c.patch
 
 一般来说这是diff的常用用法,-c的作用是在补丁包中生成改动的上下文和行数,以及a b所在的目录。
 
 2. patch 用法
 
① patch 指令中指出被打补丁的文件,比如要给a 打补丁


patch a c.patch


② patch指令中没有给出被打补丁的文件,只是有patch:


patch -p0 < e.patch


这里重点说一下参数p0的作用,补丁文件中标出了被打补丁的具体目录,比如说实在a/b/c/下。


那么如果补丁包实在和a同一级目录下,那么我们就希望补丁包找到目录a,然后再a下顺序找到b/c/,此时我们的参数应该用p0


但是如果补丁包是在和b同一级目录下,那么我们就要补丁包直接从b开始找,然后找到c下的墓边文件。此时应该用参数p1 




所以说p0 代表完全按照补丁包中的目录,往下找目标文件


p1代表忽略补丁包中标志的目录中的第一级目录,而是直接从第二级目录开始找


③ 如果补丁包打好之后想会退回原来的怎么办:此时应该加上参数R


比如上面的两条指令 :


patch -R a c.patch


patch -Rp0 < e.patch
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

补柏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值