简单明了的掌握diff命令? 参考: http://www.ruanyifeng.com/blog/2012/08/how_to_read_diff.html
diff是比较两个 文本文件, 或目录,(中名字相同的文件)
diff 是按行来比较的, 只要两个对应的行, 不完全一致, 就报告为不同, 否则就视为相同. (一行中任意一点的不同...)
检查时, 指定选项:(只要有这三个)
-b或--ignore-space-change 不检查空格字符的不同。
-B或--ignore-blank-lines 不检查空白行。
-i --ignore-case : 检查时,忽略大小写
-w 忽略全部的空格字符
主要有 四种比较显示 方式
第一. 是普通 的显示方式 --normal 这是默认的 (相同的行不显示, 只显示不同的行...)
第二. 是 并排显示的 : -y, -W 80
而显示报告不同的 情形 无非只有 三种:
一是 两行比较时, 有不同, 二是 前面的文件比后面的文件对应的行要多, 三是 前面的文件比后面的文件 行要 少.
所以 :
普通显示时: 有 三个符号 : 用 c表示 不同, 即: change, 有变化; a表示 add, 即前面的文件file1 比 后面的文件file2 多一行到n行; d表示delete, 即前面的比后面的要少.
并排比较时, 也有三种对应的符号: | 表示change, < 表示add, > 表示 delete ....
第三, 是 上下文输出显示方式, 即, 先输出第一个文件的连续行, 然后输出 第二个文件的 连续行(不同的地方), 所以叫上下文. (这个是 加州大写伯克利分校推出BSD版本时 觉得默认格式
太简单了, 需要加入显示上下文的信息, 更详细了解变化情况.
格式是: diff old new -c: -c 表示 context 上下文. 输出方式; 或者叫(前后 输出 方式) (每一行的行首 标记位: ! 标识不同, - 标识这一行被删除, +标识这一行新增的)
第四, 是统一 /合并 输出方式 -u表示 unified. unified. 即 将 两个文件相同的行只 显示一次, 而不同的行 前后一行挨着显示.
diff old new -u
第3, 4 种方式, 总是 先生成 两个文件的 说明信息, 标识 符号 用 +++ --------- *** 来标识...
要理解diff, 就要理解diff产生的背景和作用, 他是unix 用来进行代码管理的基石. 是通过比较 版本变化前后的文件的区别, 来生成patch补丁文件, 进行版本控制和复原的.
格式是: diff <version1, 版本变化前的文件> ( version2, 版本变化后的文件) > patchfile.
即;:: 通过 diff 得到 补丁文件 patchfile
然后 根据 file1 和 patchfile 来 将 file1, 打补丁到file2: patch file1 patchfile
或者通过 file2 和patchfile 来回复到file1: patch -R file2 patchfile.
格式 总是 :patch [ oldfile | -R newfile] patchfile
通常 用 ----- 或 **** 表示 变动 前的版本, 而 +++ 表示 变动后的 版本....
git格式的 diff: 默认使用的是 unified 格式的显示(unified 主要用于 相差很小 高度相似的 两个文件....!!!
diff --git a/f1 b/f2....
....
php的 接口中的函数, 不必使用 abstract. 直接 使用: public function 就可以了, 不必加abstract.
interface IFoo{
public function f1(...);
public function f2(...);
}
接口既可以被 普通类 来 实现implements, 也可以被 其他接口 来继承 extens.
也就是说 一个类要 实现多个接口, 有两种方式, 一种是直接实现 多个接口 : class c implements a , b {..}, 另一种是, 先让接口多个 逐渐多层次的 继承, 然后让普通类 只实现最后的 接口: interface b extends a {} , interface c extends b {...}, class d implements c{...}.
实现接口的普通类 本身 是可以包含 其他 成员变量 , 和其他普通方法的...
php中的常量 一是不能用 $ 符号; 二是要用 const 来 限制, 比如: const Pi=3.14; 类里面也可以定义 常量成员: class Foo {const Pi = 3.14} 引用时 Foo::Pi
简单明了的掌握diff命令? 参考: http://www.ruanyifeng.com/blog/2012/08/how_to_read_diff.html的更多相关文章
- LINUX DIFF命令详解
刚才在和公司做离线IP对比,最后手工了,感觉还是比较麻烦的,遇到数据很大的时候不能手工进行了 本想用linux下的DIFF来进行对比,发现结果很乱.时间很紧最后还是手工了. 现在忙完要认认真真学习一下 ...
- Linux 文本对比 diff 命令详解(整理)
diff 命令详解 1.概述 windows系统下面就有不错的文本对比工具可以使用,例如常用的Beyond Compare,WinMerge都是图形界面的比较工具而且使用非常方便,如果你仅仅是在win ...
- [转帖]ipvsadm命令参考及其应用例子
ipvsadm命令参考及其应用例子 https://blog.csdn.net/orichisonic/article/details/47375227 只是简单创建了 service和添加serve ...
- diff 命令详解
[自注:] 1,还有个colordiff命令,用颜色标识不同的地方.需要先安装 2,diff normal模式中 2,5表示从第二行到第五行 3,diff -c 模式中,2,5表示从第二行到第五行 4 ...
- diff 命令实用
1.概述 本文将要讨论的是diff命令,diff用来比较两个文件.当然文件比较的工具很多,windows系统下面就有不错的工具可以使用,例如常用的Beyond Compare,WinMerge都是图形 ...
- 『现学现忘』Git基础 — 21、git diff命令
目录 1.git diff 命令说明 2.比较工作区与暂存区中文件的差别 3.比较暂存区与本地库中文件的差别 4.总结git diff命令常见用法 5.总结 1.git diff 命令说明 在comm ...
- diff命令
描述 在最简单的情况是, diff 比较两个文件的内容 (源文件 和 目标文件). 文件名可以是 - 由标准输入设备读入的文本. 作为特别的情况是, diff - - 比较一份标准输入的它自己的拷贝如 ...
- diff命令参数
diff命令参数: diff - 找出两个文件的不同点 总览 diff [选项] 源文件 目标文件 描述 在最简单的情况是, diff 比较两个文件的内容 (源文件 和 目标文件). 文件名可以是 - ...
- diff命令的参数详解和实例 【转】
转自:http://blog.chinaunix.net/uid-25324849-id-270254.html diff命令参数: diff - 找出两个文件的不同点 总览 diff [选项] 源文 ...
随机推荐
- 软工网络15团队作业4——Alpha阶段敏捷冲刺6.0
软工网络15团队作业4--Alpha阶段敏捷冲刺6.0 1.每天举行站立式会议,提供当天站立式会议照片一张. 2.项目每个成员的昨天进展.存在问题.今天安排. 成员 昨天已完成 今天计划完成 郭炜埕 ...
- c++ 各种类型转换
1.int 2 string 法1:c++11里面的to_string #include <string> std::); //or auto s = std::to_string(); ...
- Rpgmakermv(34) Mog_Event Sensor
原文: =============================================================================+++ MOG - Event Sen ...
- win10系统进入BIOS
按住shift+重启,在重启过程中界面会出现“疑难解答”,点击后,在新的界面点击“高级选项”,之后在新界面上点击“UEFI固件设置”,最后点击重启,重启过程中点击Delete键,就进入了BIOS界面了 ...
- [博客迁移]探索Windows Azure 监控和自动伸缩系列2 - 获取虚拟机的监控定义和监控数据
上一篇博文介绍了如何连接Windows Azure: http://www.cnblogs.com/teld/p/5113063.html 本篇我们继续上次的示例代码,获取虚拟机的监控定义和监控数据. ...
- https://scrapingclub.com/exercise/detail_cookie/
def parse(self, response): pattern=re.compile('token=(.*?);') token=pattern.findall( response.header ...
- mitmproxy 中间人攻击的小玩笑
import mitmproxy.http from mitmproxy import ctx, http class Joker: def request(self, flow: mitmproxy ...
- Hive复制分区表和数据
1. 非分区表: 复制表结构: create table new_table as select * from exists_table where 1=0; 复制表结构和数据: create tab ...
- 区块链3.0 ada Cardano卡尔达诺如何获得一致好评?
区块链3.0 ada Cardano卡尔达诺如何获得一致好评? EOS 的直接竞争对手是以太坊.文章介绍的卡尔达诺(Cardano)的目标就更加远大了,他要同时锁定比特币和以太坊.但大家去网上搜索卡尔 ...
- strace跟踪多进程与内核的交互
1.ptrace的说明 ptrace原型: #include <sys/ptrace.h> long ptrace(enum __ptrace_request request, pid_t ...