grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/20263 Õì2a\žãA@s¬ddlZddlZddlZddlZddlZddlZyddlZ[dZWnek rZdZYnXyddl Z [ dZ Wnek r†dZ YnXyddl Z [ dZ Wnek r²dZ YnXyddl mZWnek rÜdZYnXyddlmZWnek �rdZYnXdddd d d d d dddddddddddddddddgZGdd„deƒZGd d„deƒZGd!d„deƒZGd"d„deƒZGd#d$„d$eƒZGd%d&„d&eƒZd„d)d„Zd*d+„Zdd,œd-d„Zdd,œd.d„Zeed/ƒ�rêdd,œd0d1„Znd2d1„Zdd,œd3d „Z dd,œd4d „Z!dd,œd5d „Z"d6d„Z#dde"dfd7d „Z$d8d9„Z%d:d;„Z&ej'ejej(ej)hej*k�ozej+ej,k�ozejej-kZ.d…d„Z1e"fd?d „Z2d@dA„Z3dBdC„Z4dDdE„Z5d†dGdH„Z6d‡dIdJ„Z7dKe6dˆgdMfiZ8e�re6d‰gdNfe8dO<e7gdPfe8dQ<e �re6dŠgdSfe8dT<e �r,e6d‹gdVfe8dW<dXd„Z9dŒdZd„Z:d[d„Z;d�d\d„ZdŽd`d„Z?dad„Z@dbdc„ZAddde„ZBdfdg„ZCdhgeCgdMfdigeBgdPfdjœZDe�rÂdkdlgeCgdNfeDdO<e �rÜdmdngeCgdSfeDdT<e �rödodpgeCgdVfeDdW<dqdr„ZEd�dsd„ZFeedtƒ�rLejGduƒejHdvdwƒZIdxeIjJ_KdyeIjL_KdzeIjM_Kd{du„ZNn2ejOd|k�r~ddlPZPejGduƒejHdvdwƒZId}du„ZNd�d~d„ZQd’d�d„ZRejSejTBdfd‚d„ZUdS)“éNTF)Úgetpwnam)ÚgetgrnamÚ copyfileobjÚcopyfileÚcopymodeÚcopystatÚcopyÚcopy2ÚcopytreeÚmoveÚrmtreeÚErrorÚSpecialFileErrorÚ ExecErrorÚ make_archiveÚget_archive_formatsÚregister_archive_formatÚunregister_archive_formatÚget_unpack_formatsÚregister_unpack_formatÚunregister_unpack_formatÚunpack_archiveÚignore_patternsÚchownÚwhichÚget_terminal_sizeÚ SameFileErrorc@s eZdZdS)r N)Ú__name__Ú __module__Ú __qualname__©r r ú+/opt/alt/python36/lib64/python3.6/shutil.pyr 7sc@s eZdZdS)rN)rrrr r r r!r:sc@s eZdZdS)rN)rrrr r r r!r=sc@s eZdZdS)rN)rrrr r r r!rAsc@s eZdZdS)Ú ReadErrorN)rrrr r r r!r"Dsr"c@s eZdZdS)Ú RegistryErrorN)rrrr r r r!r#Gsr#éicCs$x|j|ƒ}|sP|j|ƒqWdS)N)ÚreadÚwrite)ÚfsrcÚfdstZlengthÚbufr r r!rLs  c CsXttjdƒr0ytjj||ƒStk r.dSXtjjtjj|ƒƒtjjtjj|ƒƒkS)NÚsamefileF)ÚhasattrÚosÚpathr*ÚOSErrorÚnormcaseÚabspath)ÚsrcÚdstr r r!Ú _samefileTs r3)Úfollow_symlinkscCsÈt||ƒrtdj||ƒƒ‚xL||gD]@}ytj|ƒ}Wntk rJYq$Xtj|jƒr$td|ƒ‚q$W| rŽtj j |ƒrŽtj tj |ƒ|ƒn6t |dƒ�&}t |dƒ�}t||ƒWdQRXWdQRX|S)Nz{!r} and {!r} are the same filez`%s` is a named pipeÚrbÚwb)r3rÚformatr,Ústatr.ÚS_ISFIFOÚst_moderr-ÚislinkÚsymlinkÚreadlinkÚopenr)r1r2r4ÚfnÚstr'r(r r r!r`s    cCsz| r>tjj|ƒr>tjj|ƒr>ttdƒr8tjtj}}q\dSnttdƒrXtjtj}}ndS||ƒ}||tj|j ƒƒdS)NÚlchmodÚchmod) r,r-r;r+ÚlstatrAr8rBÚS_IMODEr:)r1r2r4Z stat_funcZ chmod_funcr@r r r!r}s  Ú listxattrcCs¼ytj||d�}Wn4tk rF}z|jtjtjfkr8‚dSd}~XnXxn|D]f}y&tj|||d�}tj||||d�WqNtk r²}z|jtjtjtjfkr¢‚WYdd}~XqNXqNWdS)N)r4) r,rEr.ÚerrnoÚENOTSUPZENODATAÚgetxattrÚsetxattrZEPERM)r1r2r4ÚnamesÚeÚnameÚvaluer r r!Ú _copyxattr“s  rNcOsdS)Nr )ÚargsÚkwargsr r r!rNªsc s6dddœdd„‰|p,tjj|ƒo*tjj|ƒ }|r@‡fdd„}n ‡fdd„}|dƒ||d�}tj|jƒ}|d ƒ||j|jf|d�y|d ƒ|||d�Wntk r¬YnXt |d ƒ�r$y|d ƒ||j |d�WnPt k �r"}z2x*dD] }t t |ƒrì|j t t |ƒkrìPqìW‚WYdd}~XnXt|||d�dS)N)Únsr4cWsdS)Nr )rQr4rOr r r!Ú_nop¸szcopystat.._nopcs tt|ˆƒS)N)Úgetattrr,)rL)rRr r!Úlookup¿szcopystat..lookupcstt|ˆƒ}|tjkr|SˆS)N)rSr,Úsupports_follow_symlinks)rLr?)rRr r!rTÄs  r8)r4ÚutimerBÚst_flagsZchflagsÚ EOPNOTSUPPrG)rXrG)r,r-r;r8rDr:Ú st_atime_nsÚ st_mtime_nsÚNotImplementedErrorr+rWr.rFrSrN) r1r2r4ZfollowrTr@ÚmodeÚwhyÚerrr )rRr!r­s,      cCsBtjj|ƒr"tjj|tjj|ƒƒ}t|||d�t|||d�|S)N)r4)r,r-ÚisdirÚjoinÚbasenamerr)r1r2r4r r r!rçs cCsBtjj|ƒr"tjj|tjj|ƒƒ}t|||d�t|||d�|S)N)r4)r,r-r_r`rarr)r1r2r4r r r!r ùs cs‡fdd„}|S)Ncs,g}xˆD]}|jtj||ƒƒq Wt|ƒS)N)ÚextendÚfnmatchÚfilterÚset)r-rJÚ ignored_namesÚpattern)Úpatternsr r!Ú_ignore_patternss z)ignore_patterns.._ignore_patternsr )rhrir )rhr!r s cCsätj|ƒ}|dk r|||ƒ}ntƒ}tj|ƒg}�xB|D�]8} | |krJq:tjj|| ƒ} tjj|| ƒ} y¢tjj| ƒrÞtj| ƒ} |r tj| | ƒt | | | d�nÚO_RDONLYÚsamestatÚfstatÚ_rmtree_safe_fdryr;Úcloserx) Útopfdr-rzrJr^rLr{Úorig_str\Údirfdr r r!r�’sD$     r�c!Cs^|rdd„}n|dkrdd„}t�rPt|tƒr8tj|ƒ}ytj|ƒ}Wn&tk rl|tj|tjƒƒdSXytj |tj ƒ}Wn&tk r¦|tj|tjƒƒdSXz˜tj j |tj |ƒƒ�rt|||ƒytj|ƒWn(tk �r|tj|tjƒƒYnXn8y tdƒ‚Wn*tk �r<|tj j|tjƒƒYnXWdtj|ƒXn t||ƒSdS)NcWsdS)Nr )rOr r r!rzÏszrmtree..onerrorcWs‚dS)Nr )rOr r r!rzÒsz%Cannot call rmtree on a symbolic link)Ú_use_fd_functionsÚ isinstanceÚbytesr,ÚfsdecoderCÚ Exceptionrtrur>r~r-rr€r�ryr.r;r‚rw)r-Ú ignore_errorsrzr„Úfdr r r!r Ãs<      cCs&tjjtjjpd}tjj|j|ƒƒS)NÚ)r,r-ÚsepÚaltsepraÚrstrip)r-rŽr r r!Ú _basenameúsr‘c Cs|}tjj|ƒrTt||ƒr*tj||ƒdStjj|t|ƒƒ}tjj|ƒrTtd|ƒ‚ytj||ƒWn–t k rútjj |ƒr¢tj |ƒ}tj ||ƒtj |ƒnTtjj|ƒrât||ƒrÈtd||fƒ‚t|||dd�t|ƒn|||ƒtj |ƒYnX|S)Nz$Destination path '%s' already existsz.Cannot move a directory '%s' into itself '%s'.T)rqro)r,r-r_r3Úrenamer`r‘rlr r.r;r=r<rxÚ _destinsrcr r )r1r2rqZreal_dstrsr r r!r s2              cCsVtjj|ƒ}tjj|ƒ}|jtjjƒs2|tjj7}|jtjjƒsL|tjj7}|j|ƒS)N)r,r-r0ÚendswithrŽÚ startswith)r1r2r r r!r“8s    r“c CsNtdks|dkrdSy t|ƒ}Wntk r8d}YnX|dk rJ|dSdS)Né)rÚKeyError)rLÚresultr r r!Ú_get_gidAs  r™c CsNtdks|dkrdSy t|ƒ}Wntk r8d}YnX|dk rJ|dSdS)Nr–)rr—)rLr˜r r r!Ú_get_uidMs  ršÚgzipc s"|dkrd}nDtr |dkr d}n2tr2|dkr2d}n trD|dkrDd}ntdj|ƒƒ‚ddl} |rfd |nd} |d | } tjj| ƒ} | r¶tjj | ƒ r¶|dk r¨|j d | ƒ|s¶tj | ƒ|dk rÈ|j d ƒt ˆƒ‰t ˆƒ‰‡‡‡‡fd d„} |�s| j| d|ƒ}z|j|| d�Wd|jƒX| S)Nr�r›ZgzÚbzip2Úbz2ÚxzzCbad value for 'compress', or compression format not supported : {0}rÚ.z.tarz creating %szCreating tar archivecs,ˆdk rˆ|_ˆ|_ˆdk r(ˆ|_ˆ|_|S)N)ÚgidZgnameÚuidÚuname)Ztarinfo)r ÚgroupÚownerr¡r r!Ú _set_uid_gidˆsz#_make_tarball.._set_uid_gidzw|%s)rd)Ú_ZLIB_SUPPORTEDÚ_BZ2_SUPPORTEDÚ_LZMA_SUPPORTEDÚ ValueErrorr7Útarfiler,r-ÚdirnamerlÚinforkršr™r>Úaddr‚)Ú base_nameÚbase_dirÚcompressÚverboseÚdry_runr¤r£ÚloggerZtar_compressionrªZ compress_extZ archive_nameÚ archive_dirr¥Útarr )r r£r¤r¡r!Ú _make_tarballYs<          r¶c Cs|ddl}|d}tjj|ƒ}|rPtjj|ƒ rP|dk rB|jd|ƒ|sPtj|ƒ|dk rf|jd||ƒ|�sx|j|d|jd��ô}tjj |ƒ} | tj kr¶|j | | ƒ|dk r¶|jd| ƒx¶tj |ƒD]¨\} } } xFt | ƒD]:} tjj tjj| | ƒƒ} |j | | ƒ|dk rÖ|jd| ƒqÖWxT| D]L} tjj tjj| | ƒƒ} tjj| ƒ�r|j | | ƒ|dk �r|jd| ƒ�qWqÂWWdQRX|S)Nrz.zipz creating %sz#creating '%s' and adding '%s' to itÚw)Z compressionz adding '%s')Úzipfiler,r-r«rlr¬rkÚZipFileZ ZIP_DEFLATEDÚnormpathÚcurdirr&ÚwalkÚsortedr`Úisfile)r®r¯r±r²r³r¸Z zip_filenamer´Zzfr-ÚdirpathZdirnamesÚ filenamesrLr r r!Ú _make_zipfilešs@             rÁrµr°zuncompressed tar filezgzip'ed tar-fileZgztarzZIP fileÚziprœzbzip2'ed tar-fileZbztarržzxz'ed tar-fileZxztarcCsdd„tjƒDƒ}|jƒ|S)NcSsg|]\}}||df‘qS)r–r )Ú.0rLÚregistryr r r!ú Üsz'get_archive_formats..)Ú_ARCHIVE_FORMATSÚitemsÚsort)Úformatsr r r!r×s r�cCsz|dkr g}t|ƒs td|ƒ‚t|ttfƒs6tdƒ‚x0|D](}t|ttfƒ s\t|ƒdkr|dk r$|jd|ƒtjj|ƒ}|s>tj|ƒ|dkrLtj}||dœ} y t|} Wn tk r‚t d|ƒ‚YnX| d} x| dD]\} }|| | <q–W|dkrÂ|| d<|| d<z| ||f| Ž}Wd|dk rü|dk rò|jd | ƒtj| ƒX|S) Nzchanging into '%s')r²r³zunknown archive format '%s'rérÂr¤r£zchanging back to '%s') r,ÚgetcwdÚdebugr-r0Úchdirr»rÆr—r©)r®r7Zroot_dirr¯r±r²r¤r£r³Zsave_cwdrPÚ format_infoÚfuncÚargÚvalr}r r r!rùs6        cCsdd„tjƒDƒ}|jƒ|S)NcSs"g|]\}}||d|df‘qS)rér )rÃrLr¬r r r!rÅ6sz&get_unpack_formats..)Ú_UNPACK_FORMATSrÇrÈ)rÉr r r!r0s c Csvi}x.tjƒD]"\}}x|dD] }|||<q WqWx,|D]$}||kr:d}t||||fƒ‚q:Wt|ƒsrtdƒ‚dS)Nrz!%s is already registered for "%s"z*The registered function must be a callable)rÜrÇr#rÊrË) Ú extensionsrÏrÐZexisting_extensionsrLr¬ÚextÚ extensionÚmsgr r r!Ú_check_unpack_options;s rácCs,|dkr g}t|||ƒ||||ft|<dS)N)rárÜ)rLrÝrÏrÐrÑr r r!rMs cCs t|=dS)N)rÜ)rLr r r!rcscCs&tjj|ƒ}tjj|ƒs"tj|ƒdS)N)r,r-r«r_rk)r-r«r r r!Ú_ensure_directorygs  râc CsÊddl}|j|ƒstd|ƒ‚|j|ƒ}z’xŒ|jƒD]€}|j}|jdƒs4d|krRq4tjj |f|j dƒžŽ}|spq4t |ƒ|j dƒs4|j |jƒ}t|dƒ}z|j|ƒWd|jƒ~Xq4WWd|jƒXdS)Nrz%s is not a zip fileú/z..r6)r¸Z is_zipfiler"r¹Zinfolistr}r•r,r-r`Úsplitrâr”r%r>r&r‚) r}Ú extract_dirr¸rÂr¬rLÚtargetÚdataÚfr r r!Ú_unpack_zipfilems*       récCsXddl}y|j|ƒ}Wn"|jk r8td|ƒ‚YnXz|j|ƒWd|jƒXdS)Nrz/%s is not a compressed or uncompressed tar file)rªr>ZTarErrorr"Z extractallr‚)r}rårªZtarobjr r r!Ú_unpack_tarfile�srêz.tarz.zip)rµrÂz.tar.gzz.tgzz.tar.bz2z.tbz2z.tar.xzz.txzcCs:x4tjƒD](\}}x|dD]}|j|ƒr|SqWq WdS)Nr)rÜrÇr”)r}rLr¬rßr r r!Ú_find_unpack_format®s   rëc Cs´|dkrtjƒ}|dk rhy t|}Wn"tk rFtdj|ƒƒ‚YnX|d}|||ft|dƒŽnHt|ƒ}|dkr†tdj|ƒƒ‚t|d}tt|dƒ}|||f|ŽdS)NzUnknown unpack format '{0}'rÓr–zUnknown archive format '{0}') r,rÔrÜr—r©r7Údictrër")r}rår7r×rØrPr r r!rµs  ÚstatvfsÚ disk_usageÚusageztotal used freezTotal space in byteszUsed space in byteszFree space in bytescCs@tj|ƒ}|j|j}|j|j}|j|j|j}t|||ƒS)N)r,ríÚf_bavailÚf_frsizeÚf_blocksÚf_bfreeÚ_ntuple_diskusage)r-r@ÚfreeÚtotalÚusedr r r!rîâs    ÚntcCs"tj|ƒ\}}||}t|||ƒS)N)røZ _getdiskusagerô)r-rörõr÷r r r!rîôscCsž|dkr|dkrtdƒ‚|}|}|dkr.d}n(t|tƒrVt|ƒ}|dkrVtdj|ƒƒ‚|dkrdd}n(t|tƒsŒt|ƒ}|dkrŒtdj|ƒƒ‚tj |||ƒdS)Nzuser and/or group must be setrÓzno such user: {!r}zno such group: {!r}éÿÿÿÿrù) r©r‡rnršÚ LookupErrorr7Úintr™r,r)r-Úuserr£Z_userÚ_groupr r r!rÿs"  éPécCsÔyttjdƒ}Wnttfk r.d}YnXyttjdƒ}Wnttfk r^d}YnX|dksp|dkrÆytjtjjƒƒ}Wn$t tt fk r¨tj |ƒ}YnX|dkr¸|j }|dkrÆ|j }tj ||fƒS)NÚCOLUMNSrZLINES)rûr,Úenvironr—r©rrtÚ __stdout__ÚfilenoÚAttributeErrorr.Ú terminal_sizeÚcolumnsÚlines)ÚfallbackrrÚsizer r r!rs$  c s"dd„}tjjˆƒr&|ˆ|ƒr"ˆSdS|dkr>tjjdtjƒ}|sFdS|jtjƒ}tj dkr¼tj |krt|j dtj ƒtjjddƒjtjƒ}t ‡fdd „|Dƒƒr¨ˆg}q‡fd d „|Dƒ}nˆg}t ƒ}xT|D]L}tjj|ƒ}||krÎ|j|ƒx(|D] } tjj|| ƒ} || |ƒrö| SqöWqÎWdS) NcSs&tjj|ƒo$tj||ƒo$tjj|ƒ S)N)r,r-rlÚaccessr_)r?r\r r r!Ú _access_checkXszwhich.._access_checkÚPATHÚwin32rZPATHEXTr�c3s |]}ˆjƒj|jƒƒVqdS)N)Úlowerr”)rÃrÞ)Úcmdr r!ú uszwhich..csg|] }ˆ|‘qSr r )rÃrÞ)rr r!rÅxszwhich..)r,r-r«rÚgetÚdefpathräÚpathseprtÚplatformr»ÚinsertÚanyrer/r­r`) rr\r-r ZpathextÚfilesÚseenÚdirZnormdirZthefilerLr )rr!rKs8            é@)r)FN)r›rrNNN)rrN)r°N)r°r›)r°rœ)r°rž)Nr�)NNrrNNN)Nr�)NN)NN©rþrÿ)r)Vr,rtr8rcÚ collectionsrFÚzlibr¦Ú ImportErrorr�r§Zlzmar¨ÚpwdrZgrprÚ__all__r.r rrrr"rŠr#rr3rrr+rNrrr rr rwr�r>rxryÚsupports_dir_fdrjÚ supports_fdrUr†r Zavoids_symlink_attacksr‘r r“r™ršr¶rÁrÆrrrrrrárrrârérêrÜrërrmÚ namedtuplerôröÚ__doc__r÷rõrîrLrørrÚF_OKÚX_OKrr r r r!Úsü          :  Y!,   5 8    @ -     6  "        %        -