N天学习一个linux命令之diff
用途
按行比较文件差异,也可以比较目录
用法
diff [OPTION]... FILES
常用选项
-i --ignore-case
忽略大小写
--ignore-file-name-case
忽略文件名大小写
--no-ignore-file-name-case
文件名区分大小写
-E --ignore-tab-expansion
忽略tab字符
-b --ignore-space-change
忽略空格
-w --ignore-all-space
忽略所有空格
-B --ignore-blank-lines
忽略空白行
-I RE --ignore-matching-lines=RE
过滤匹配的行
--strip-trailing-cr
去掉行尾回车符
-a --text
所有文件内容当做文本
-c -C NUM --context[=NUM]
(Output NUM (default 3) lines of copied context.)
-u -U NUM --unified[=NUM]
(Output NUM (default 3) lines of unified context.)
--label LABEL
使用LABEL代替文件名
-p --show-c-function
显示差异行所在文件
-F RE --show-function-line=RE
(Show the most recent line matching RE.)
-q --brief
直接输出结果是否有差异
-e --ed
(Output an ed script.)
--normal
(Output a normal diff.)
-n --rcs
(Output an RCS format diff.)
-y --side-by-side
同时输出2个文件的内容,对照显示
-W NUM --width=NUM
(Output at most NUM (default 130) print columns.)
--left-column
左边输出完整内容,右边只输出差异
--suppress-common-lines
只输出差异行
-D NAME --ifdef=NAME
(Output merged file to show ‘#ifdef NAME’ diffs.)
--GTYPE-group-format=GFMT
(Similar, but format GTYPE input groups with GFMT.)
(GTYPE is LTYPE or ‘changed’.)
--line-format=LFMT
(Similar, but format all input lines with LFMT.)
--LTYPE-line-format=LFMT
(Similar, but format LTYPE input lines with LFMT.)
(LTYPE is ‘old’, ‘new’, or ‘unchanged’.)
-l --paginate
分页显示
-t --expand-tabs
输出时,tab字符换成空格
-T --initial-tab
(Make tabs line up by prepending a tab.)
-r --recursive
(Recursively compare any subdirectories found.)
-N --new-file
(Treat absent files as empty.)
--unidirectional-new-file
(Treat absent first files as empty.)
-s --report-identical-files
(Report when two files are the same.)
-x PAT --exclude=PAT
(Exclude files that match PAT.)
-X FILE --exclude-from=FILE
(Exclude files that match any pattern in FILE.)
-S FILE --starting-file=FILE
(Start with FILE when comparing directories.)
--from-file=FILE1
(Compare FILE1 to all operands. FILE1 can be a directory.)
--to-file=FILE2
(Compare all operands to FILE2. FILE2 can be a directory.)
--horizon-lines=NUM
(Keep NUM lines of the common prefix and suffix.)
-d --minimal
(Try hard to find a smaller set of changes.)
--speed-large-files
(Assume large files and many scattered small changes.)
-v --version
输出程序版本信息
--help
显示帮助信息
实践
1 比较2个文件
# 显示所有
diff -y dir1/friend.php friend.php
# 只显示差异
diff -y --suppress-common-lines dir1/friend.php friend.php
# 只显示左边完整内容,右边只显示差异内容
diff -y --left-column dir1/friend.php friend.php
擦参考资料
【1】man diff
N天学习一个linux命令之diff的更多相关文章
- N天学习一个Linux命令之帮助命令:man
前言 工作中每天都在使用常用的命令和非常用的命令,忘记了用法或者参数,都会bing一下,然后如此循环.一直没有真正的系统的深入的去了解命令的用法,我决定打破它.以前看到有人,每天学习一个linux命令 ...
- N天学习一个Linux命令之free
用途 查看系统内存(物理/虚拟/缓存/共享)使用情况 用法 free [-b | -k | -m | -g | -h] [-o] [-s delay ] [-c count ] [-a] [-t] [ ...
- N天学习一个linux命令之ping
用途 检测主机是否可到达,也就是说,目标主机是否可以联网,还可以用于检测网速.通过发送ICMP ECHO_REQUEST数据包检测. 用法 ping [options] destination 常用选 ...
- N天学习一个linux命令之kill
用途 用于终止进程 用法 kill [-s signal|-p] [--] pid... kill -l [signal] 说明 1.默认发送信号15(请求终止进程,程序可以捕获,操作系统会杀死没有对 ...
- N天学习一个linux命令之du
用途 统计文件或者目录占用硬盘空间大小 用法 du [OPTION] [FILE]du [OPTION] --files0-from=F 常用参数 -a, --all统计所有文件,不仅仅是目录 -b, ...
- N天学习一个linux命令之scp
用途 通过ssh通道,不同主机之间复制文件 用法 scp [options] [user@host:]file1 [user2@host2:]file2 常用参数 -1使用 ssh 1协议 -2使用s ...
- 每天学习一个Linux命令-目录
在工作中总会零零散散使用到各种Linux命令,从今天开始详细的学习一下linux常用命令,坚持每天一个命令,学习的主要参考资料为: 1.竹子-博客(https://www.cnblogs.com/pe ...
- 每天一个linux命令(49)--diff命令
diff 命令是 Linux 上非常重要的工具,用于比较文件的内容,特别是比较两个版本不同的文件以找到改动的地方.diff 在命令行中打印每一个行的改动.最新版本的diff还支持二进制文件,diff ...
- N天学习一个linux命令之umask
前言 umask不是linux命令,而是shell内置的指令,俗称用户权限掩码,用于对用户创建的文件和目录设置默认权限.默认的权限掩码是0022,也就是说新创建的文件权限是0644,新创建的目录权限是 ...
随机推荐
- akka设计模式系列(Actor模型)
谈到Akka就必须介绍Actor并发模型,而谈到Actor就必须看一篇叫做<A Universal Modular Actor Formalism for Artificial Intellig ...
- 6月来了,Java还是第一!
2019年6月了,话说现在很多小孩子都开始接触幼儿编程了,我也经常看到幼儿编程的广告,编程门槛真的是越来越低. 除此之外,也有大量其他行业的从业者想转软件开发的,编程那么广,语言那么多,那么在这么多编 ...
- JS 正则查找与替换
JS正则查找与替换 一.前提/背景 今天遇到个问题,需要替换字符串中部分字符,这些字符相对整个字符串而言,与其他子字符串类似,无法单独提出:重要的是,该字符串是动态的生成的,就像我们日常看到的网页Ur ...
- JavaScript--关闭窗口(window.close)
close()关闭窗口 用法: window.close(); //关闭本窗口 或 <窗口对象>.close(); //关闭指定的窗口 例如:关闭新建的窗口. <script typ ...
- 分享两篇关于ActionBar样式设置的博客
http://www.open-open.com/lib/view/open1373981182669.html http://blog.csdn.net/xyz_lmn/article/detail ...
- xml操作-Nested exception: org.xml.sax.SAXParseException: White spaces are required between publicId and systemId. 异常处理
异常如下: org.dom4j.DocumentException: Error on line 2 of document file:///D:/workspaces/struts2/lesson0 ...
- Microsoft SQL Server学习(二)--数据库的语法
关于数据库的语法 创建数据库 样例 名词概念 编写数据库代码的注意事项 关于文件语法 实例代码 关于数据库的语法: 1.创建数据库 create database 数据库名 on primary (主 ...
- 详谈java集合框架
1.为什么使用集合框架 当我们并不知道程序运行时会需要多少对象,或者需要更复杂方式存储对象——可以使用Java集合框架 2.Java集合框架包含的内容 接口:(父类)Collection接口下包含Li ...
- python mongodb压力测试脚本
$ pip install pymongo #!/usr/bin/env python #coding=utf-8 #Author: Ca0Gu0 from pymongo import MongoC ...
- IOS: Xcode报 Undecleared selector Warning错误的解决方法
Undecleared selector Warning 是编译器报的,特别是升级到IOS7 默认PROJ设定的时候,会出现这种问题,如果从代码上看语法完全没有问题,那么就可以在Xcode里面设置禁 ...