| 您的当前位置:首页 --> CentOS入门 |
| gzip -cd xxxxx | path -d xxx -p1命令的含义 |
| 浏览次数:2176 关键词 ( 含义 命令 xxxxx cd ) |
|
在nginx实战系列 在编译安装过程中 编译安装PHP时使用了一个命令 “ gzip -cd php-5.2.6.-fpm-0.5.9diff.gz | patch -d php-5.2.6 -p1 ” 这条命令的作用是把“php-5.2.6.-fpm”(这个是小布老师推荐的一个php管理工具)给添加到PHP的源码包中, 但是这条命令具体是什么意思呢? 经过小半天的搜索、阅读、思考,大致了解了这条命令的含义,秉承boobooke的精神 加强大家学习时的交流,也为了分享和巩固自己学到的知识,保持这种积极的学习状态,所以发了这个..叫什么.....算是学习笔记吧! 这个“gzip"就是”gun zip“啦,解压用的 “-cd”呢? -c 就是” stdout --to-stdout “ 将结果写到标准输出;原文件保持不变 , 用大白话来说就是解压并保留源文件。-d 就是解压缩啦。 那么这个patch呢?我们知道它翻译过来就是 补丁 的意思。说道这里我们要介绍一下另一个工具diff 在开源的世界里大多数人都通过网络来传播和更新软件,但是 在互联网的早期,网络带宽是非常有限的, 这个时候就产生了diff和patch(diff比patch大约早十年,g.cn说的) diff的主要用来”生成一个文件,该文件中列出了内容发生改变的行,显示两个原始文件、修改过的行以及由于 内容没有变化而忽略掉的行“(简单的讲就是生成更新包啦) patch典型地用于把一个目录下的源代码文件更新到新的版本,从而就避免了下载整个新的源代码档案的必要 (就是用更新包更新啦,但有一点区别就是,它更新的是源码包,完了之后你还得重新编译安装)。 我简单说一个diff和patch的用法: diff A B >C ,一般A是原始文件,B是修改后的文件,C称为A的补丁文件 A 和B可以是文件和目录,如果一个是文件,另一个是目录,那么目录下同名的文件起作用。如果是两个目录, 则作用于该目录下的所有文件,但不递归,使用-r参数可以实现递归 patch的用法 还是用上面的例子 patch A C 执行后,A就变成了B。如果执行之后发现补丁打错了,怎么办?这时就可以使用参数 -R (注意大小写!) patch -R B C 就可以重新还原到A了。 这里还有一个原文件的路径和名称的问题: -p参数决定了是否使用读出的源文件名的前缀目录信息,不提供-p参数,则忽略所有目录信息,-p0(或者-p 0)表示使用全部的路径信息, -p1将忽略第一个"/"以前的目录,依此类推。如/usr/src/linux-2.4.15/Makefile这样的文件名,在提供-p3参数时将使用linux-2.4.15/Makefile作为所要patch的文件。 |
| 下载次数:12 |
| 下载地址:点击下载 |
| 本资源为程序自动采集,如有侵权请联系我们移除 admin#80vps.com 来信请将#替换为@ |
| 下一条 centos系统中网络配置相关 上一条 centos双线双ip服务器路由设置方法 |