diff快速显示2个目录下所有不同文件名称而非内容

简介:

快速显示2个目录dir1,dir2下所有不同文件名称

diff -ruNaq dir1 dir2

diff -ruaq dir1 dir2(如果dir1和dir2中彼此都没有对方文件,那么将以only的形式human提示)

因为需要往terminal输出log,所以感觉会比bcompare慢,实际上用如下方法你就能知道diff有多快了

(当然diff -rNq和diff -rq效果和-ruNaq一样)

diff -ruNaq dir1 dir2 > /dev/null

生成patch

diff -ruNa dir1 dir2 > test.patch

-----------------------------------------------------------------------------------

例如:

# ls test -R

test:

a  b  c


test/a:

aa


test/b:

bb


test/c:


# ls test1 -R

test1:

a  b


test1/a:

aa


test1/b:

bb


# diff  test test1   

Common subdirectories: test/a and test1/a

Common subdirectories: test/b and test1/b

Only in test: c


# diff -r test test1 

diff -r test/b/bb test1/b/bb

0a1

> 1

Only in test: c


# diff -rq test test1

Files test/b/bb and test1/b/bb differ

Only in test: c


# diff -rqN test test1

Files test/b/bb and test1/b/bb differ


# diff -rqNa test test1

Files test/b/bb and test1/b/bb differ


# diff -rqNau test test1

Files test/b/bb and test1/b/bb differ

-----------------------------------------------------------------------------------

-a 把所有文件看出文本形式,并对它们进行逐行比较,即使它们看起来不是文件文件

-b 忽略空格

-B 忽略空白行

-i 忽略大小写

--brief 只报告两个文件是否相同,不报告详细的不同信息

-c 使用上下文输出格式

-d 改变算法,使得diff命令可能找到一个更小的文件差异

-e 产生一个将文件1变成文件2的“ed script”

-r 比较目录时递归比较子目录

-b 支持Unix的兼容性

-n RCS格式

-N 在目录比较中,如果一个文件只出现在第一个目录中,那么认为它在另外一个目录中也出现,并且为空

-p 显示不同的信息位于哪个C函数中

-P 在目录比较中,如果一个文件只出现在第二个目录中,那么认定它在另外一个目录中也出现,并且为空

--paginate 通过pr输出,并且标记页数

-q 不报告差异,只说明两者内容是否有差异

-s 当比较的两个文件相同时报告信息

-t 输出时,[tab]键按照空格键来输出

-T 输出时,[tab]键输出,而非空格键

-u 使用统一的输出格式

-y 输出使用对比格式


选择参数


-D<宏名字> 引入if-then-else输出格式来预处理宏名称

-s<文件> 比较文件时,从指定的文件进行比较

--from-file<文件> 同所有的操作数比较指定的文件,可以是目录

--new-group-format=<模式> 用指定的模式,按照 if-then-else方式,输出第二个文件中的一组行内容

--help 显示帮助信息

--version 显示版本信息

















本文转自leonardos51CTO博客,原文链接:http://blog.51cto.com/leomars/1917042 ,如需转载请自行联系原作者



相关文章
|
7月前
|
容器
查看文件内容命令
查看文件内容命令
59 0
touch-cat-more命令,touch 命令可以创建文件,touch test.txt创建一个txt文件,ls -l 标识为d,头部显示,行,的就是文件的意思,cat查看文件,more支持翻页q
touch-cat-more命令,touch 命令可以创建文件,touch test.txt创建一个txt文件,ls -l 标识为d,头部显示,行,的就是文件的意思,cat查看文件,more支持翻页q
|
7月前
讲解:如何根据txt文本列出的文件名批量查找指定文件夹里的文件并复制到新的文件夹里 , 按照文件名批量复制文件 , 根据文件名批量复制 , 通过文件名批量复制文件
该文介绍了一款批量文件处理软件,用于解决三类问题:依据文件名清单批量复制图片、筛选PDF文件及删除指定文件。用户可从百度或腾讯下载链接获取软件。操作步骤包括加载文件夹、输入文件名清单、设置目标位置、选择操作类型(复制、剪切或删除)及匹配方式,然后开始查找。软件能快速处理大量文件,提高办公效率,避免手动操作。查找结果会显示在特定文件夹和日志中,记录每个操作详情。
754 5
|
7月前
|
Windows
推荐:如何批量根据PDF文件名批量查找PDF文件,复制到指定地方保存,通过文件名批量复制文件,按照文件名批量复制文件,根据文件名批量提取文件
该文介绍了一个批量查找PDF文件(不限于找PDF)的工具,用于在多级文件夹中快速查找并复制特定文件。通过下载提供的软件,用户可以加载PDF库,输入文件名列表,设置操作参数(如保存路径、复制或删除)及搜索模式。软件能高效执行,例如在1.1秒内完成对数千文件中的37个目标文件的复制,显著提升了工作效率,避免了手动逐个查找和复制的繁琐。
637 0
|
7月前
|
Java
怎样查找某个目录下内容含有某个字符串的文件或多久之前的文件
怎样查找某个目录下内容含有某个字符串的文件或多久之前的文件
39 0
|
Web App开发 存储 数据可视化
VCF文件修改染色体格式的方法
VCF文件修改染色体格式的方法
合并多个文件的内容到一个文件
合并多个文件的内容到一个文件
|
Shell Perl
把当前目录(包含子目录)下所有后缀为 “.sh” 的文件后缀变更为 “.shell”,之后删除每个文件的第二行
把当前目录(包含子目录)下所有后缀为 “.sh” 的文件后缀变更为 “.shell”,之后删除每个文件的第二行。
100 1
|
存储 文件存储 C++
C++ 实现输出某个文件夹下所有文件名称,finddata_t、findfirst、findnext函数祥讲细讲解
利用C++实现输出某个文件夹下的文件名,需要用到的函数及其数据类型;
|
机器学习/深度学习
一个将当前目录下HEX文件的第一行数据删除的程序
为什么要写这样一个函数 在使用SoftConsole开发M3程序时,生成的hex文件,必须要把第一行数据删除,才能在Libero中使用,所以写了这个小工具,这是2.0版本了,第一版是直接删除第一行数据,有可能会导致误操作。
1017 0