Your IP : 3.145.152.49
U
e5d� � @ sV d dl Z d dlmZ d dlmZ dddd�Zdd d
�Zddd
�Zddd�Zdd� Z dS )� 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 d S )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<t
d| ��tj�|�rd|}
tj�|tj�
| ��}ntj�|�}
|r�|| |�s�|dkr�t�d| � |dfS zt| }W n tk
r� td| ��Y nX |dk�rtj�
|�tj�
| �kr�t�d|| |
� nt�d|| |� |�r|dfS |d k�rrtj�|��rBtj�| |��s�zt�| |� |dfW S tk
�rn Y nX n<|d
k�r�tj�|��r�tj�| |��s�t�| |� |dfS t| |� |�s�|�rt�| �}|�r�t�||| ||
f� |�rt�|||| �� |dfS )Nr )�newer)�ST_ATIME�ST_MTIME�ST_MODE�S_IMODEz4can't copy '%s': doesn't exist or not a regular filer z"not copying %s (output up-to-date)z&invalid value '%s' for 'link' argumentz%s %s -> %sr r )Zdistutils.dep_utilr �statr r r r r
r �isfiler �isdir�join�basename�dirnamer �debug�_copy_action�KeyError�
ValueError�infor �samefile�linkr �symlinkr �utime�chmod)r r Z
preserve_modeZpreserve_times�updater+ �verbose�dry_runr r r r r �dir�action�str r r � copy_fileC sV !�
r5 c C s� ddl m}m}m}m}m} dd l} |dkr:t�d| |� |rB|S || �sVt d| ��||�rrt
j�||| ��}n||�r�t d| |f ��|||��s�t d| |f ��d}
zt
�
| |� W nP tk
�r
} z0|j\}}
|| jkr�d }
nt d
| ||
f ��W 5 d }~X Y nX |
�r�t| ||d� zt
�| � W nh tk
�r� } zH|j\}}
zt
�|� W n tk
�rp Y nX t d| || |
f ��W 5 d }~X Y nX |S )
Nr )r r r! r# r$ r zmoving %s -> %sz#can't move '%s': not a regular filez0can't move '%s': destination '%s' already existsz2can't move '%s': destination '%s' not a valid pathFTzcouldn't move '%s' to '%s': %s)r0 zAcouldn't move '%s' to '%s' by copy/delete: delete '%s' failed: %s)Zos.pathr r r! r# r$ �errnor r) r r
r r"