para examples ejemplos python unix last-modified

examples - ¿cómo puedo configurar la última hora modificada de un archivo de Python?



manual de python para arcgis (3)

Si quieres hacer esto directamente desde python, estás buscando os.utime . Los documentos pueden darte más información.

Tengo un script de Python que descarga un archivo a través de FTP usando ftplib .

Mi código de descarga actual se ve como el ejemplo en los documentos ftp lib:

ftp.retrbinary(''RETR README'', open(''README'', ''wb'').write)

Ahora tengo el requisito de que el archivo descargado a través de FTP debe tener la misma hora de última modificación que el archivo en el servidor FTP. Asumiendo que podría analizar el tiempo de ftp.retrlines(''list'') , ¿cómo puedo establecer la hora modificada en el archivo descargado?

Estoy en un sistema operativo basado en Unix si eso importa.


Hay 2 formas de hacer esto. Uno es el ejemplo anterior de os.utime que se requiere si está configurando la marca de tiempo en un archivo que no tiene estadísticas de referencia. Sin embargo, si está copiando los archivos con "shutil.copy ()", tiene un archivo de referencia. Luego, si quiere que también se copien los bits de permiso, la última hora de acceso, la última hora de modificación y los indicadores, puede usar "shutil.copystat ()" inmediatamente después de "shutil.copy ()".

No tengo idea de por qué no agregan indicadores a "shutil.copy ()" que hace esto en un solo comando. Parece que fue implementado por diferentes autores. Uno implementó la copia y otro implementó el copystat para completar la función faltante en el primero.

Y luego está "shutil.copy2", que está destinado a hacer ambas cosas a la vez ...


Use os.utime :

import os os.utime(path_to_file, (access_time, modification_time))