b374k
m1n1 1.01
Apache/2.2.15 (CentOS)
Linux obd60-6c49958d75-2q7cw 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64
uid=48(apache) gid=48(apache) groups=48(apache)
server ip : 104.21.65.202 | your ip : 10.244.126.0
safemode OFF
 >  / usr / lib64 / python2.6 /
Filename/usr/lib64/python2.6/filecmp.pyo
Size9.41 kb
Permissionrw-r--r--
Ownerapache
Create time23-Dec-2025 17:41
Last modified20-Jun-2019 19:45
Last accessed22-Apr-2026 05:26
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
Ñò
§ÚêLc@sÕdZddkZddkZddklZlZlZlZdddgZhZ dZ
d d
�Z d �Z d �Z
ddd
��YZd d�Zee d�Zd�Zd�Zedjo e�ndS(s�Utilities for comparing files and directories.

Classes:
dircmp

Functions:
cmp(f1, f2, shallow=1) -> int
cmpfiles(a, b, common) -> ([], [], [])

iÿÿÿÿN(tifiltert ifilterfalsetimaptiziptcmptdircmptcmpfilesiiicCsòtti|��}tti|��}|dtijp|dtijotS|o||jotS|d|djotSti||f�}|o ||f|d jo |dSt||�}|||ft||f<|S(s�Compare two files.

Arguments:

f1 -- First file name

f2 -- Second file name

shallow -- Just check stat signature (do not read the files).
defaults to 1.

Return value:

True if the files are the same, False otherwise.

This function uses a cache for past comparisons and the results,
with a cache invalidation mechanism relying on stale signatures.

iii( t_sigtoststattS_IFREGtFalsetTruet_cachetgett_do_cmp(tf1tf2tshallowts1ts2tresulttoutcome((s/usr/lib64/python2.6/filecmp.pyRs( cCsti|i�|i|ifS(N(R tS_IFMTtst_modetst_sizetst_mtime(tst((s/usr/lib64/python2.6/filecmp.pyR:scCsst}t|d�}t|d�}xHto@|i|�}|i|�}||jotS|ptSq'WdS(Ntrb(tBUFSIZEtopenR treadR (RRtbufsizetfp1tfp2tb1tb2((s/usr/lib64/python2.6/filecmp.pyR?s
cBsÈeZdZddd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d�Z d �Z d
�Z
ed e d ed
ededededededededede� Zd�ZRS(sQA class that manages the comparison of 2 directories.

dircmp(a,b,ignore=None,hide=None)
A and B are directories.
IGNORE is a list of names to ignore,
defaults to ['RCS', 'CVS', 'tags'].
HIDE is a list of names to hide,
defaults to [os.curdir, os.pardir].

High level usage:
x = dircmp(dir1, dir2)
x.report() -> prints a report on the differences between dir1 and dir2
or
x.report_partial_closure() -> prints report on differences between dir1
and dir2, and reports on common immediate subdirectories.
x.report_full_closure() -> like report_partial_closure,
but fully recursive.

Attributes:
left_list, right_list: The files in dir1 and dir2,
filtered by hide and ignore.
common: a list of names in both dir1 and dir2.
left_only, right_only: names only in dir1, dir2.
common_dirs: subdirectories in both dir1 and dir2.
common_files: files in both dir1 and dir2.
common_funny: names in both dir1 and dir2 where the type differs between
dir1 and dir2, or the name is not stat-able.
same_files: list of identical files.
diff_files: list of filenames which differ.
funny_files: list of files which could not be compared.
subdirs: a dictionary of dircmp objects, keyed by names in common_dirs.
cCsq||_||_|djotitig|_n
||_|djodddg|_n
||_dS(NtRCStCVSttags(tlefttrighttNoneRtcurdirtpardirthidetignore(tselftatbR.R-((s/usr/lib64/python2.6/filecmp.pyt__init__os  
 
cCsntti|i�|i|i�|_tti|i�|i|i�|_|ii �|ii �dS(N(
t_filterRtlistdirR(R-R.t left_listR)t
right_listtsort(R/((s/usr/lib64/python2.6/filecmp.pytphase0{s 
cCs»ttttii|i�|i��}ttttii|i�|i��}t|i t
|i |��|_ t|i t
|i |��|_t|i t
|i |��|_dS(N(tdictRRRtpathtnormcaseR5R6tmapt __getitem__Rt __contains__tcommonRt left_onlyt
right_only(R/R0R1((s/usr/lib64/python2.6/filecmp.pytphase1�s
**!!c
Cs�g|_g|_g|_xg|iD]\}tii|i|�}tii|i|�}d}yti |�}Wnti
j
o}d}nXyti |�}Wnti
j
o}d}nX|o¡t i |i �}t i |i �} || jo|ii
|�q�t i|�o|ii
|�q�t i|�o|ii
|�q�|ii
|�q%|ii
|�q%WdS(Nii(t common_dirst common_filest common_funnyR?RR:tjoinR(R)R terrorRRtappendtS_ISDIRtS_ISREG(
R/txta_pathtb_pathtokta_stattwhytb_statta_typetb_type((s/usr/lib64/python2.6/filecmp.pytphase2�s6   
  
cCs7t|i|i|i�}|\|_|_|_dS(N(RR(R)RDt
same_filest
diff_filest funny_files(R/txx((s/usr/lib64/python2.6/filecmp.pytphase3­scCssh|_xc|iD]X}tii|i|�}tii|i|�}t|||i|i �|i|<qWdS(N(
tsubdirsRCRR:RFR(R)RR.R-(R/RKta_xtb_x((s/usr/lib64/python2.6/filecmp.pytphase4±s  
cCs2|i�x!|ii�D]}|i�qWdS(N(R]RZt
itervaluestphase4_closure(R/tsd((s/usr/lib64/python2.6/filecmp.pyR_»s
cCs>dG|iG|iGH|io(|ii�dG|iGdG|iGHn|io(|ii�dG|iGdG|iGHn|io|ii�dG|iGHn|io|ii�dG|iGHn|io|ii�dG|iGHn|io|ii�dG|iGHn|i o|i i�dG|i GHndS( NtdiffsOnly int:sIdentical files :sDiffering files :sTrouble with common files :sCommon subdirectories :sCommon funny cases :(
R(R)R@R7RARURVRWRCRE(R/((s/usr/lib64/python2.6/filecmp.pytreportÀs,













cCs3|i�x"|ii�D]}H|i�qWdS(N(RcRZR^(R/R`((s/usr/lib64/python2.6/filecmp.pytreport_partial_closureÙs

cCs3|i�x"|ii�D]}H|i�qWdS(N(RcRZR^treport_full_closure(R/R`((s/usr/lib64/python2.6/filecmp.pyReßs

RZRURVRWRCRDRER?R@RAR5R6cCs;||ijo
t|�n|i||�t||�S(N(t methodmaptAttributeErrortgetattr(R/tattr((s/usr/lib64/python2.6/filecmp.pyt __getattr__ës
N(t__name__t
__module__t__doc__R*R2R8RBRTRYR]R_RcRdReR9RfRj(((s/usr/lib64/python2.6/filecmp.pyRMs"    # 
    cCskgggf}xU|D]M}tii||�}tii||�}|t|||�i|�qW|S(s]Compare common files in two directories.

a, b -- directory names
common -- list of file names found in both directories
shallow -- if true, do comparison based solely on stat() information

Returns a tuple of three lists:
files that compare equal
files that are different
filenames that aren't regular files.

(RR:RFt_cmpRH(R0R1R?RtresRKtaxtbx((s/usr/lib64/python2.6/filecmp.pyRñs
!cCs9y|||||�� SWntij
odSXdS(Ni(RRG(R0R1tshtabsR((s/usr/lib64/python2.6/filecmp.pyRn scCstt|i|��S(N(tlistRR>(tflisttskip((s/usr/lib64/python2.6/filecmp.pyR3scCs ddk}ddk}|i|idd�\}}t|�djo|idd��nt|d|d�}d |jo|i�n |i�dS(
Niÿÿÿÿitrisneed exactly two argsis-rt(s-rRx( tsystgetopttargvtlent GetoptErrorR*RReRc(RyRztoptionstargstdd((s/usr/lib64/python2.6/filecmp.pytdemos  
t__main__i ((RmRR t itertoolsRRRRt__all__R
RRRRRRRsRnR3R�Rk(((s/usr/lib64/python2.6/filecmp.pyt<module>
s   " %  ¤