linux如何patch打补丁
2024-08-30 16:46:52
1. 创建2个文件 1.txt 和 2.txt 并在1.txt基础上修改成为2.txt
book@100ask:~/patch$ ls
1.txt 2.txt
book@100ask:~/patch$ cat 1.txt
111
222
333
book@100ask:~/patch$ cat 2.txt
111aaa
22
333
444
book@100ask:~/patch$
2.使用 diff -uprN 创建1.txt的补丁文件(1.patch)
book@100ask:~/patch$ diff -uprN 1.txt 2.txt > 1.patch
book@100ask:~/patch$ ls
1.patch 1.txt 2.txt
解析diff 命令参数
命令 : diff
-p //在每一更改处显示c函数,方便程序员定位代码
-u //按补丁统一格式输出
-r //递归子目录
-N //对于不存在的文件或者是空白文件和新增文件,在补丁文件里面包含新的文件内
分析补丁文件(1.patch)
"---" 开头表示原始文件
"+++" 开头表示新文件
"@@" 开头表示补丁文件的范围并以"@@"结尾,-开头表示原始文件的行号范围,+开头表示新文件的行号范围
"+" 开头表示原始文件不存在,在新文件添加
"-" 开头表示原始文件存在,但在新文件删除了
其他的为原始文件和新文件都有的内容
book@100ask:~/patch$ ls
1.patch 1.txt 2.txt
book@100ask:~/patch$ cat 1.patch
--- 1.txt 2021-05-23 08:09:25.887150622 -0400 //原始文件
+++ 2.txt 2021-05-23 08:13:10.707561369 -0400 //新文件
@@ -1,3 +1,4 @@
-111 //删除内容
-222 //删除内容
+111aaa //新增内容
+22 //新增内容
333 //不变内容
+444 //新增内容
book@100as
最新文章
- Linux常用命令[转]
- 并发-Java中的Copy-On-Write容器
- dtw算法
- Android之下拉刷新,上啦加载的实现(一)
- IOS 使用block完成网络请求的自定义类BlockURLConnection
- Servlet Listener
- 从unity3d官网下载教程
- SQL Server 负载均衡集群方案之Moebius
- Bzoj 1598: [Usaco2008 Mar]牛跑步 dijkstra,堆,K短路,A*
- boost操作xml 5分钟官方教程
- Android屏幕适配问题详解
- UVA - 1631 Locker 记忆化搜索
- mongodb备份还原脚本
- Tomcat在Window控制台下启动时乱码的两种解决办法
- 20175105 2018-2019-2 《Java程序设计》第八周学习总结
- LigerUI子父窗口之间传参问题
- 不常见的javascript调试技巧
- Codeforces 820B - Mister B and Angle in Polygon
- ORACLE常用数值函数、转换函数、字符串函数介绍
- 洛谷P4608 [FJOI2016]所有公共子序列问题 【序列自动机 + dp + 高精】