patch 与 diff
时间:2009-07-21 来源:binary_XY.Z
一. patch命令的基本使用
示例:
patch -Np1 -i ../gcc-3.4.3-no_fixincludes-1.patch -p 标志使得无需手工编辑补丁文件就可以定制补丁文件到本地用户目录结构中。通过指定从路径全称除去多少部分可以做到这一点。例如,如果补丁文件包含路径名称 /curds/whey/src/blurfl/blurfl.c,那么: -p 0 导致使用完整路径名
-p 1 除去前导斜杠,留下 curds/whey/src/blurfl/blurfl.c
-p 4 除去前导斜杠和前三个目录,留下 blurfl/blurfl.c
不指定 -p 标志使得 patch 命令使用基本名称。在上面的示例中,此文件为 blurfl.c
-N 忽略差别已经向文件应用了的补丁。缺省情况下,会拒绝已经应用的补丁 -i PatchFile 从指定文件,而不是从标准输入中读取补丁信息
二. diff 用于比较两个文件之间的不同, 通常用在ASCII纯文本文件的比较。 语法: diff [-bBi] from-file to-file from-file 原始比较文件的文件名 to-file 目的比较文件的文件名 -b 忽略一行中有多个空白的差异, 例如: about me 跟 about me 视为相同 -B 忽略空白行的不同 -i 忽略大小写的不同 关于diff的输出, 比如4d3 ,表示左边的文件第四行被删除; 6c5 表示左边的文件的第六行被替换成右边文件的第五行。 diff也可以用于比较两个目录。
patch -Np1 -i ../gcc-3.4.3-no_fixincludes-1.patch -p 标志使得无需手工编辑补丁文件就可以定制补丁文件到本地用户目录结构中。通过指定从路径全称除去多少部分可以做到这一点。例如,如果补丁文件包含路径名称 /curds/whey/src/blurfl/blurfl.c,那么: -p 0 导致使用完整路径名
-p 1 除去前导斜杠,留下 curds/whey/src/blurfl/blurfl.c
-p 4 除去前导斜杠和前三个目录,留下 blurfl/blurfl.c
不指定 -p 标志使得 patch 命令使用基本名称。在上面的示例中,此文件为 blurfl.c
-N 忽略差别已经向文件应用了的补丁。缺省情况下,会拒绝已经应用的补丁 -i PatchFile 从指定文件,而不是从标准输入中读取补丁信息
二. diff 用于比较两个文件之间的不同, 通常用在ASCII纯文本文件的比较。 语法: diff [-bBi] from-file to-file from-file 原始比较文件的文件名 to-file 目的比较文件的文件名 -b 忽略一行中有多个空白的差异, 例如: about me 跟 about me 视为相同 -B 忽略空白行的不同 -i 忽略大小写的不同 关于diff的输出, 比如4d3 ,表示左边的文件第四行被删除; 6c5 表示左边的文件的第六行被替换成右边文件的第五行。 diff也可以用于比较两个目录。
相关阅读 更多 +