码迷,mamicode.com
首页 > 其他好文 > 详细

文件与目录差异对比模块filecmp

时间:2018-04-29 01:13:13      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:div   模块   说明   stat   安装   conf   导致   存在   审计   

   简介

      当我们进行代码审计或校验备份结果时,往往需要检查原始与目标目录的文件一致性,python的标准库已经自带了满足此需求的模块filecmp。filecmp可以实现文件、目录、遍历子目录的差异对比功能。比如报告中输出目标目录比原始多出的文件或子目录,即使文件同名也会判断是否为同一个文件(内容级对比)等,python2.3以上版本自带了filecmp模块,无需额外安装。

模块常用方法说明

      filecmp 提供了三个操作方法,分别为cmp(单文件对比)、cmpfiles(多文件对比)、dircmp(目录对比)

单文件对比,采用filecmp.cmp(f1,f2[,shallow])方法,比较文件名为f1和f2的文件,相同返回True,不相同返回False,shallow默认为True,意思是只根据os.stat()方法返回的文件基本信息进行对比,比如访问的时间、修改时间、状态改变时间等,会忽略文件内容的对比。当shallow为 False时,则os.stat()与文件内容同时进行校验。

>>> import filecmp
>>> filecmp.cmp("nginx.conf.v1","nginx.conf.v2")
False
>>> 

 多文件对比,采用filecmp.cmpfiles(dir1,dir2,common[,shallow])方法,对比dir1与dir2目录给定文件清单。该方法返回文件名的三个列表,分别为匹配、不匹配、错误。匹配为包含匹配的文件列表,不匹配反之,错误列表包含了目录不存在的文件、不具备读权限或其他原因导致的不能比较的文件清单。

 

文件与目录差异对比模块filecmp

标签:div   模块   说明   stat   安装   conf   导致   存在   审计   

原文地址:https://www.cnblogs.com/Jabe/p/8970001.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!