逐行比较三个文件
命令语法格式
diff3 [OPTION]… MYFILE OLDFILE YOURFILE
命令描述
逐行比较三个文件。
如果FILE是’-‘,则读取标准输入。
默认的输出格式为可读格式,反映了文件的变化。
命令支持的选项及含义
需要提供给长选项的参数也需要提供给对应的短选项。
-A, –show-all
输出所有更改,在括弧内显示冲突。
-m, –merge
输出实际合并文件。如果没有给出其他选项,根据-A选项。
最后,-m(–merge)选项使diff3在内部进行合并,并输出实际的合并文件。对于异常输入,这比使用ed更强大。
-a, –text
将所有的文件视为文本文件。
–strip-trailing-cr
截掉输入中的回车字符(CR)。
-T, –initial-tab
通过添加制表符(TAB)使标签对齐。
–diff-program=PROGRAM
使用PROGRAM程序来比较文件。
-L, –label=LABEL
使用LABEL,而不是文件名(文件名可以重复三次)。
-3, –easy-only
类似于-e选项,但只包含不重叠的更改。
输出ed脚本
选项-e、-E、-x、-X以及对应的长选项使diff3输出ed脚本,而不是输出默认的格式:
-e, –ed
输出ed脚本,将OLDFILE到YOURFILE的更改合并到MYFILE中
-E, –show-overlap
类似于-e选项,但是在括弧内显示冲突。
-x, –overlap-only
类似于-e选项,但只包含重叠的变化。
-X
类似于-x,但是在括弧内显示冲突。
-i
向ed脚本中追加“w”和“q”命令。
其他选项
–help
显示帮助信息并退出。
-v, –version
显示版本信息。
退出状态
0 输入文件相同
1 存在冲突
2 存在其他问题
相关手册
cmp(1), diff(1), sdiff(1)
查看Info手册:info diff3
参考文献
- man 1 diff3, Version 13.5-3
- GNU/GNU Diffutils/14 Invoking diff3
更新日志
- 08/08/2018 创建文章