python简单实现目录对比

Python目录比较工具
本文介绍了一个使用Python编写的简单目录比较脚本,该脚本利用filecmp模块来对比两个目录的内容,包括文件和子目录,并展示了如何获取不同类型的比较结果。
[root@localhost python]# cat dircmptest.py 
#!/usr/bin/python
import filecmp
path1="/root/python/a"
path2="/root/python/b"
test=filecmp.dircmp(path1,path2)                                          #比较目录,path1是左,path2是右
#test.report()                                #比较当前目录中指定的内容
#test.report_partial_closure()                            #比较当前目录及第一级子目录内容 
#test.report_full_closure()                                               #递归比较目录内的所有内容
print 'all files and dirs in left_list(path1): '+str(test.left_list)      #显示左列表内容
print "common files"+str(test.common_files)               #显示两个目录共同的文件(文件名相同)
print "diff files"+str(test.diff_files)                   #显示两个目录内文件名相同但是内容不同的文件
print "common dirs"+str(test.common_dirs)                 #显示两个目录内子目录相同的目录名
print "common dirs and files"+str(test.common)                #显示两个目录名称相同的文件或者目录
print "only in left list,no in right list: "+str(test.left_only)      #显示只有左目录特有的文件
print "same_files is: "+str(test.same_files)                  #显示两个目录内文件名相同且内容相同的文件
[root@localhost python]# ./dircmptest.py 
all files and dirs in left_list(path1): ['a.txt', 'b.txt', 'info.py', 'k', 'k.py', 'kali', 'linux']
common files['kali', 'a.txt', 'info.py']
diff files['a.txt']
common dirs['k']
common dirs and files['kali', 'a.txt', 'info.py', 'k']
only in left list,no in right list: ['b.txt', 'k.py', 'linux']
same_files is: ['kali', 'info.py']
[root@localhost python]# ls a a/k b b/k
a:
a.txt  b.txt  info.py  k  kali  k.py  linux

a/k:
c.txt

b:
a.txt  bp  c.txt  info.py  k  kali

b/k:
k.py  linux
[root@localhost python]# cat a/a.txt b/a.txt 
linux
ok
[root@localhost python]# cat a/kali b/kali 
a
a
[root@localhost python]# 

转载于:https://www.cnblogs.com/biaopei/p/7730529.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值