U
e5dÔ ã @ sZ d Z ddlZddlmZ ddlmZ ddddœZdd
d„Zdd
d„Zddd„Z dd„ Z
dS )zFdistutils.file_util
Utility functions for operating on single files.
é N)ÚDistutilsFileError)ÚlogZcopyingzhard linkingzsymbolically linking)NÚhardÚsymé @ c
C s¢ d}d}�ztzt| dƒ}W n4 tk
rN } ztd| |jf ƒ‚W 5 d}~X Y nX tj |¡r zt |¡ W n4 tk
rž } ztd||jf ƒ‚W 5 d}~X Y nX zt|dƒ}W n4 tk
râ } ztd||jf ƒ‚W 5 d}~X Y nX z| |¡}W n6 tk
�r( } ztd| |jf ƒ‚W 5 d}~X Y nX |�s4�q|z|
|¡ W qä tk
�rx } ztd||jf ƒ‚W 5 d}~X Y qäX qäW 5 |�rŽ| ¡ |�rœ| ¡ X dS ) a5 Copy the file 'src' to 'dst'; both must be filenames. Any error
opening either file, reading from 'src', or writing to 'dst', raises
DistutilsFileError. Data is read/written in chunks of 'buffer_size'
bytes (default 16k). No attempt is made to handle anything apart from
regular files.
NÚrbzcould not open '%s': %szcould not delete '%s': %sÚwbzcould not create '%s': %szcould not read from '%s': %szcould not write to '%s': %s)ÚcloseÚopenÚOSErrorr ÚstrerrorÚosÚpathÚexistsÚunlinkÚreadÚwrite)ÚsrcÚdstZbuffer_sizeZfsrcZfdstÚeZbuf© r ú+/usr/lib64/python3.8/distutils/file_util.pyÚ_copy_file_contents sL $ÿÿÿÿr é c C s ddl m} ddlm} m}
m}m} tj | ¡s