poplar1986 发表于 2013-2-7 07:51:42

你应该知道的Linux命令之Patch

 
今天在ubuntu下进行mysql源码编译的时候,因为部门的一位前辈写了一个mysql的补丁,需要使用patch对mysql进行打补丁。
 
在了解到要使用这个命令之后,我现在ubuntu的终端窗口使用man  patch,大概读了下patch的介绍
 
 
Patch是什么?
 
    ------------------    NAME       patch - apply a diff file to an original    SYNOPSIS         patch ]         but usually just         patch -pnum <patchfile>------------------  
Larry Wall的patch程序。patch是用来查找文件之间差异的GNUdiff命令的一个接口;diff有很多选项,但是该命令最常用的用途是用来生成一个文件,该文件中列出了内容发生改变的行,显示两个原始文件、修改过的行以及由于内容没有变化而忽略掉的行。patch典型地用于把一个目录下的源代码文件更新到新的版本,从而就避免了下载整个新的源代码档案的必要。下载一个有效的patch仅仅需要下载发生变化的那些代码行就可以了
如何使用patch
 
patch附带有一个很好的帮助,其中罗列了很多选项,但是99%的时间只要两个选项就能满足我们的需要:
 
patch -p1 < patch -R < (used to undo a patch)  
 
-p1选项代表patchfile中文件名左边目录的层数,顶层目录在不同的机器上有所不同。要使用这个选项,就要把你的patch放在要被打补丁的目录下,然后在这个目录中运行path -p1 < 。
页: [1]
查看完整版本: 你应该知道的Linux命令之Patch