2023-06-08 16:00:30
ThanksView
|
patch指令让用户利用补丁文件来修改,更新原始文件,达到升级原始文件功能的目的。
一、生成补丁文件: 我们通过diff命令来生成补丁文件,diff -Naur a.txt b.txt 首先我们来看两个文件:a.txt,b.txt $ vim -O a.txt b.txt safsdgfdsg |fdsfdgfdgsdg 12345 |12345 |555555555 hello linux |hello python very good | 注意:crtl+w 点击两次 两个窗口切换 通过执行diff -Naur命令查看文件差异: # diff -Naur a.txt b.txt --- a.txt 2022-04-14 03:35:41.000000000 +0000 +++ b.txt 2022-04-14 03:35:53.000000000 +0000 @@ -1,7 +1,4 @@ - -safsdgfdsg +fdsfdgfdgsdg 12345 - -hello linux -very good - +555555555 +hello python 命令选项说明: -N 不存在的文件以空文件方式处理 -a 所有文件都以文本方式处理 -u [n] 输出(默认为 3 行)一致的上下文(差异前后相同的行,方便定义差异的位置) -r 连同所有子目录一起比较(递归处理) 可以通过重定向命令,将diff的输出保存到文件,作为补丁文件。diff -Naur a.txt b.txt > c.patch 二、打补丁: 1、方式一:有了补丁文件文件,我们可以通过patch命令来升级原始文件。 # patch < c.patch patching file a.txt 这样,a.txt文件就打好了补丁。如果想撤销补丁则执行:diff -R < c.patch 注:使用diff命令生成补丁文件时,参数后的第一个文件名(a.txt)是原始文件,生成的补丁文件(c.patch)也是针对原始文件做的diff,所以执行patch < c.patch 时,就会自动将c.patch打进a.txt中。注意顺序不能搞反了。 2、方式二: # patch -p0 < c.patch 命令选项说明: -pNUM 从文件名中去除 NUM 前导部分(同级目录 NUM 填 0 就可以) |
三维半岛官网: http://www.thanksview.com
进入首页-
产品展示
物联网与人工智能 -
方案定制
嵌入式系统与液晶屏方案定制开发 -
技术支持
常见问题分析与解决