怎么快速对比两个Linux文件夹

怎么快速对比两个Linux文件夹,第1张

一】可以通过ls -l|wc -l对比文件数量是否一样

二】可以通过ls -l >filename.txt然后再diff filename1.txt filename2.txt,将文件名列出来并重定向到一个文件,然后通过diff命令对比这两个文件即可找到有哪些文件不一致。

三】升级版,通过md5sum命令生成md5码,然后用for循环进行遍历对比

可以用diff命令对比文档内容。

[语法]: diff [参数] 文件1 文件2

[说明]: 本命令比较两个文本文件,将不同的行列出来

-b 将一串空格或TAB 转换成一个空格或TAB

-e 生成一个编辑角本,作为ex 或ed 的输入可将文件1 转换成文件2

[例子]:

diff file1 file2

diff -b file1 file2

diff -e file1 file2 >edscript

diff 命令的常用参数

a 将所有文件当做文本文件来处理

b 忽略空格造成的不同

B 忽略空行造成的不同

q 只报告什么地方不同,不报告具体的不同信息

H 利用试探法加速对大文件的搜索

i 忽略大小写的变化

l 用pr对输出进行分页

r 在比较目录时比较所有的子目录

s 两个文件相同时才报告

v 在标准输出上输出版本信息并退出

实例:比较两个文件

代码如下:

[root@localhost test3]# diff log2014.log log2013.log

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

3c3

《 2014-03

---

》 2013-03

8c8

《 2013-07

---

》 2013-08

11,12d10

《 2013-11

《 2013-12

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

说明:上面的“3c3”和“8c8”表示log2014.log和log20143log文件在3行和第8行内容有所不同;“11,12d10”表示第一个文件比第二个文件多了第11和12行。

一个是a相对于b有啥变化,一个是b相对于a有啥变化。

比如说a中有一行code:

printf(“hello”);

b有两行code:

printf(“hello”);

printf(“world”);

那么a相对于b的改变就是 - printf(“world”);

b相对于a的改变,就是 + printf(“world”);

你自己diff下看看就是了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8102122.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存