1、两个文件,hello.c和hello-new.c
hello.c内容:
void main()
{
printf("hello the world!\n");
}
hello-new.c内容:
void main()
{
printf("HELLO THE WORLD!\n");
}
2、diff -u hello.c hello-new.c > hello.patch生成hello.patch文件内容
--- hello.c 2009-11-26 16:12:38.000000000 +0800
+++ hello-new.c 2009-11-26 16:13:15.000000000 +0800
@@ -1,4 +1,4 @@
void main()
{
- printf("hello the world!\n");
+ printf("HELLO THE WORLD!\n");
}
3、patch hello.c < hello.patch
hello.c内容和hello-new.c一样了。
说明:
1、diff的使用
diff可以完成比较功能,生成补丁文件
格式::diff [option] oldfile newfile
常用的option选项有:
-r 对目录进行递归处理
-u 输出统一格式,diff有"传统"和"统一"两种格式,现在一般使用"统一"格式,比较而言,统一格式生成的文件大,但包含了更多的信息,有利于阅读与定位
-N 补丁中包含整个新文件
-a 补丁中包含二进制文件
缺省时,diff向标准输出打印,所以一般都重定向到文件并以patch为后缀,也就是所谓的补丁文件。
2、如果patch失败,patch会把成功的行打上补丁,失败的行存为以.rej为后缀的文件折,并生成原文件的备份,如果成功则不生成备份。 -b选项可以指定后缀名。
阅读(2026) | 评论(0) | 转发(0) |