GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Holen Sie sich die Dateierstellungszeit mit Python unter Linux

versuchen:

st_birthtime

Es ist jedoch nicht garantiert, dass es auf allen Systemen verfügbar ist. Aus der Dokumentation:

Auf einigen Unix-Systemen (z. B. Linux) können auch die folgenden Attribute verfügbar sein:st_blocks (Anzahl der für die Datei zugewiesenen Blöcke), st_blksize (Blockgröße des Dateisystems), st_rdev (Gerätetyp, wenn es sich um ein Inode-Gerät handelt). st_flags (benutzerdefinierte Flags für die Datei).

Auf anderen Unix-Systemen (z. B. FreeBSD) sind die folgenden Attribute möglicherweise verfügbar (können aber nur ausgefüllt werden, wenn root versucht, sie zu verwenden):st_gen(Dateigenerationsnummer), st_birthtime(Zeitpunkt der Dateierstellung).

http://docs.python.org/2/library/os.html#os.stat


Wahrscheinlich nicht.:

3.1)  How do I find the creation time of a file?

      You can't - it isn't stored anywhere.  Files have a last-modified
      time (shown by "ls -l"), a last-accessed time (shown by "ls -lu")
      and an inode change time (shown by "ls -lc"). The latter is often
      referred to as the "creation time" - even in some man pages -
      but that's wrong; it's also set by such operations as mv, ln,
      chmod, chown and chgrp.

      The man page for "stat(2)" discusses this.

In Ermangelung eines guten Dienstprogramms habe ich crtime erstellt.

pip install crtime

Dann können Sie es wie folgt verwenden:

sudo crtime ./

Würde drucken:

1552938281  /home/pascal/crtime/.gitignore
1552938281  /home/pascal/crtime/README.md
1552938281  /home/pascal/crtime/crtime
1552938281  /home/pascal/crtime/deploy.py
1552938281  /home/pascal/crtime/setup.cfg
1552938281  /home/pascal/crtime/setup.py
1552938961  /home/pascal/crtime/crtime.egg-info
1552939447  /home/pascal/crtime/.git
1552939540  /home/pascal/crtime/build
1552939540  /home/pascal/crtime/dist

Beachten Sie, dass es bei großen Verzeichnissen leicht 1000x schneller sein wird als xstat oben, da dies eine temporäre Datei erstellt und dann stat ausführt Aufrufe für alle Dateien auf einmal.

In Python (vergessen Sie nicht, dass Sie es unter Linux immer noch mit sudo aufrufen müssen):

from crtime import get_crtimes, get_crtimes_in_dir
get_crtimes_in_dir("./")

Linux
  1. Beginnen Sie mit NetworkManager unter Linux

  2. Sortierbefehl in Linux mit Beispielen

  3. Linux – Wie finde ich das Erstellungsdatum der Datei?

  4. Linux – Wie bringt man Oracle Java 7 dazu, mit Setcap Cap_net_bind_service+ep zu arbeiten?

  5. Dateiberechtigungen unter Linux mit Beispiel

So erhalten Sie das aktuelle Datum und die aktuelle Uhrzeit in Python

Linux-Tail-Befehl mit Beispielen

Linux-WC-Befehl mit Beispielen

Linux-Dateizeitstempel mit Beispielen erklärt

Verwendung des Linux-mv-Befehls mit Beispielen

Wie bekomme ich die Datei-/Ordnergröße mit SSH unter Linux?