Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich die Erstellungs- und Änderungszeitstempel einer Datei zuverlässig über verschiedene Betriebssysteme hinweg abrufen?

Wie kann ich die Erstellungs- und Änderungszeitstempel einer Datei zuverlässig über verschiedene Betriebssysteme hinweg abrufen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-12 21:49:10998Durchsuche

How Can I Get a File's Creation and Modification Timestamps Reliably Across Different Operating Systems?

Plattformübergreifender Zugriff auf Dateierstellungs- und Änderungsdatum/-uhrzeit

Mit os.path ist das plattformübergreifende Abrufen von Dateiänderungsdatum/-uhrzeit unkompliziert .getmtime(Pfad). Berücksichtigen Sie für einen detaillierteren Ansatz die folgenden Nuancen:

Windows

Für Erstellungsdaten unter Windows verwenden Sie os.path.getctime(path). Dadurch wird die „Erstellungszeit“ (ctime) der Datei abgerufen, die spezifisch für Windows ist.

Mac und Unix (außer Linux)

Zugriff auf Erstellungsdaten über .st_birthtime Attribut von os.stat() Ergebnis.

Linux

Leider ist das Abrufen von Erstellungsdaten unter Linux derzeit nicht möglich, ohne eine Python-C-Erweiterung zu implementieren. Der Zugriff auf st_crtime, das Erstellungsdaten auf Linux-Dateisystemen speichert, ist durch Einschränkungen im Linux-Kernel eingeschränkt. Als Alternative können Sie os.path.getmtime() verwenden, um den Zeitstempel der Inhaltsänderung zu erhalten.

Um alle Plattformen abzudecken, könnte ein vielseitiger Ansatz wie folgt aussehen:

import os
import platform

def creation_date(path):
    if platform.system() == 'Windows':
        return os.path.getctime(path)
    else:
        stat = os.stat(path)
        try:
            return stat.st_birthtime
        except AttributeError:
            return stat.st_mtime

Das obige ist der detaillierte Inhalt vonWie kann ich die Erstellungs- und Änderungszeitstempel einer Datei zuverlässig über verschiedene Betriebssysteme hinweg abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn