2008-12-17 9 views
38

En supposant que le fichier existe (en utilisant os.path.exists(filename) pour vérifier d'abord que le fichier existe), comment afficher l'heure à laquelle un fichier a été modifié pour la dernière fois? C'est sur Linux si cela fait une différence.Comment puis-je obtenir l'heure à laquelle un fichier a été modifié pour la dernière fois en Python?

+2

double possible de [Comment obtenir la création de fichiers et la date de modification/fois en Python ?] (http://stackoverflow.com/questions/237079/how-to-get-file-creation-modification-date-times-in-python) –

Répondre

42

os.stat()

import os 
filename = "/etc/fstab" 
statbuf = os.stat(filename) 
print("Modification time: {}".format(statbuf.st_mtime)) 

Linux n'enregistre pas le temps de création d'un fichier (for most fileystems).

+0

Merci. Il semble que Linux ne stocke pas l'heure de création du fichier. Il semble que j'aurais dû le savoir. :) –

97
>>> import os 
>>> f = os.path.getmtime('test1.jpg') 
>>> f 
1223995325.0 

depuis le début de (époque)

+1

Merci, ceci nous a été utile. Cela semble être l'approche la plus directe à ma question spécifique, mais la solution os.stat donne plus d'informations. –

+5

Je ne savais pas qu'il y avait une fonction explicite pour cela. Vivez et apprenez je suppose. –

+4

Moi non plus; temps pour remplacer 'os.stat' par' os.path.getmtime' dans mon codebase ... –

0

Nouveau pour python 3.4+ (voir: pathlib)

import pathlib 

path = Path('some/path/to/file.ext') 
last_modified = path.stat().st_mtime