GNU/Linux >> Linux Esercitazione >  >> Linux

Ottieni il tempo di creazione del file con Python su Linux

prova:

st_birthtime

Tuttavia, non è garantito che sia disponibile su tutti i sistemi. Dai documenti:

Su alcuni sistemi Unix (come Linux), potrebbero essere disponibili anche i seguenti attributi:st_blocks (numero di blocchi allocati per il file), st_blksize (dimensione del blocco del filesystem), st_rdev (tipo di dispositivo se un dispositivo inode).st_flags (flag definiti dall'utente per il file).

Su altri sistemi Unix (come FreeBSD), i seguenti attributi potrebbero essere disponibili (ma potrebbero essere compilati solo se root cerca di usarli):st_gen(numero di generazione del file), st_birthtime(ora di creazione del file).

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


Probabilmente non puoi.:

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.

Per mancanza di una buona utilità, ho creato crtime.

pip install crtime

Quindi puoi usarlo come:

sudo crtime ./

Stamperebbe:

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

Nota che per le directory di grandi dimensioni sarà facilmente 1000 volte più veloce di xstat sopra, poiché questo crea un file temporaneo e quindi esegue stat chiama tutti i file contemporaneamente.

In python (non dimenticare che devi ancora chiamarlo con sudo su linux):

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

Linux
  1. Linux:quali file system su Linux archiviano il tempo di creazione?

  2. Linux:come far funzionare Oracle Java 7 con Setcap Cap_net_bind_service+ep?

  3. Ottieni l'età del file specificato?

  4. Ottieni il tempo di creazione/creazione del file??

  5. Come ottenere solo il nome del file con Linux "trova"?

Come ottenere la data e l'ora correnti in Python

Comando Tail Linux con esempi

Comando Linux WC con esempi

Timestamp dei file Linux spiegati con esempi

Utilizzo del comando Linux mv con esempi

Come ottenere le dimensioni di file/cartelle con SSH su Linux?