linux diff 用法比较2个文件夹文件


1、文件夹/tmp/001   /tmp/002

问题:、

     1、查看2个文件夹不同的文件;

    tree  -C  directory1 directory2   ## -C  标记有颜色

              ls  directory1 directory2

     2、 diff的使用:      

diff -r directory1 directory2 但是diff会对每个文件中的每一行都做比较,所以文件较多或者文件较大的时候会非常慢。请谨慎使用。 

 3、find 结合 diff    

find directory1 -printf "%P\n" | sort > file1 find directory2 -printf "%P\n" | sort | diff file1 -
  1. <代表的行是directory1中有而directory2没有的文件,>则相反,是directory2中有而directory1中没有。
  2. 不要省略-printf "%P\n",此处的%P表示find的结果中去掉前缀路径,详细内容man find。例如,find /root/ -printf "%P\n"的结果中将显示/root/a/xyz.txt中去掉/root/后的结果:a/xyz.txt。
  3. 效率很高,输出也简洁。z
 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM