2008-12-17 17 views
38

Zakładając, że plik istnieje (używając najpierw numeru os.path.exists(filename)), jak wyświetlić czas ostatniej modyfikacji pliku? To jest na Linuksie, jeśli to robi jakąkolwiek różnicę.Jak uzyskać czas ostatniej modyfikacji pliku w Pythonie?

+2

możliwe duplikat [Jak uzyskać utworzenie pliku i data modyfikacji/razy w Pythonie ?] (http://stackoverflow.com/questions/237079/how-to-get-file-creation-modification-date-times-in-python) –

Odpowiedz

42

os.stat()

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

Linux nie rejestruje czas utworzenia pliku (for most fileystems).

+0

Dziękuję. Wygląda na to, że Linux nie zapisuje czasu utworzenia pliku. Wygląda na to, że powinienem był to wiedzieć. :) –

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

od początku (epoki)

+1

Dzięki, to było pomocne. To wydaje się być bardziej bezpośrednie podejście do mojego konkretnego pytania, ale rozwiązanie os.stat daje więcej informacji. –

+5

Nie wiedziałem, że istnieje do tego wyraźna funkcja. Żyj i ucz się, jak sądzę. –

+4

Ja też; czas na zastąpienie 'os.stat' przez' os.path.getmtime' w mojej bazie kodu ... –

0

nowy dla pytona 3.4+ (patrz: pathlib)

import pathlib 

path = Path('some/path/to/file.ext') 
last_modified = path.stat().st_mtime 
Powiązane problemy