diff和patch是一对工具,从数学上来讲,diff是对两个集合的差运算,patch是两个集合的和运算。
基本命令语法:patch [-R] {-p(n)} [--dry-run] < patch_file_name
p:为path的缩写。
n:指将patch文件中的path第n条’/’及其左边部分取消。
-R:卸载patch包。
--dry-run:尝试patch软件,并不真正修改软件
单个文件
diff –uN from-file to-file >to-file.patch 制作补丁
patch –p0 < to-file.patch 打补丁
patch –RE –p0 < to-file.patch 还原
多个文件
diff –uNr from-docu to-docu >to-docu.patch
patch –p1 < to-docu.patch 打补丁
patch –R –p1 还原
单个文件打补丁步骤
#比较两个文件
diff file1 file2
#将比较结果保存到file.patch中
diff file1 file2>file.patch
#使用补丁包升级file1文件
patch -p0 file1 file.patch
多个文件打补丁
如下图,安装补丁和下载补丁