Bonjour,
Est-il possible d'obtenir la date de création d'un fichier sous Linux. stat ne semble pas retourner l'info. (date dernier accès, derniere modif, date dernier changement de status)
Bonjour,
Est-il possible d'obtenir la date de création d'un fichier sous Linux. stat ne semble pas retourner l'info. (date dernier accès, derniere modif, date dernier changement de status)
Bonjour,
Dans le man (cygwin ou site ubuntu), il y a ceci (option pas toujours présente dans le man linux...):
Cela me semble être ce que tu cherches mais je pense que cela dépend fortement de la structure du Filesystem...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 %w time of file birth, human-readable; - if unknown %W time of file birth, seconds since Epoch; 0 if unknown
C'est en fait la fonction stat en C dont je parlais. mais en tapant stat en console sans même l'option %w j'ai une ligne crée qui est vide, donc je pense que mon filesystem ne gère pas la date de création. Je suis en ext4. Le ext4 ne gère pas ça ?
Pour répondre à ta question, voir le lien suivant (en anglais):
birth-is-empty-on-ext4
J'ai trouvé ceci :
http://unix.stackexchange.com/questi...n-date-of-file
extrait :
Donc les systèmes les utilisés sous linux : ext4, btrfs, et JFS stockent l'info, mais celle-ci n'est pas accessible depuis les APIs et la norme POSIX ne donne pas l'info de date de création.The POSIX standard only defines three distinct timestamps to be stored for each file: the time of last data access, the time of last data modification, and the time the file status last changed.
That said, modern Linux filesystems, such as ext4, Btrfs and JFS, do store the file creation time (aka birth time), but use different names for the field in question (crtime in ext4, otime in Btrfs and JFS). However, currently Linux does not provide a kernel API for accessing the file creation times, even on filesystems supporting them.
Je vais donc considérer que l'info n'est pas accessible.
Salut,
on dirait que tu n'as pas bien lu le lien de disedorgue (ou alors en diagonale ) : je viens de tester la manip proposée par un posteur qui utilise debugfs et ma foi, en ext4, ça a fonctionné !
J'te remets le lien : Je n'ai pas testé le script proposé + bas, par contre, je laisse ça comme un exercice pour le lecteur, comme on dit
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ctime: 0x553de61c:b2e403d4 -- Mon Apr 27 09:32:44 2015 atime: 0x55dd5ad2:099cd64c -- Wed Aug 26 08:21:06 2015 mtime: 0x553d6b6c:55084890 -- Mon Apr 27 00:49:16 2015 crtime: 0x553d68ec:aee00e70 -- Mon Apr 27 00:38:36 2015
Et attention à la remarque du dernier post (quoiqu'à notre époque...)
Oui, il y a aussi ZFS, GPFS, FAT, NTFS, QFS, VXFS, CIFS, et d'autres.
mais n'interdit pas de la stocker. De toute façon, POSIX n'a jamais empéché Gnu/Linux d'implémenter une multitude d'extensions au standard. GNU supporte depuis longtemps cette extension, le blocage se situe du côté du noyau Linux. Il 's'agit d'un choix curieux mais délibéré de Linus Torvalds qui refuse obstinément les tentatives d'ajout d'API dans Linux (xstat). https://lkml.org/lkml/2010/7/22/249et la norme POSIX ne donne pas l'info de date de création.
"debugfs" permet de contourner ce problème en attendant qu'il change d'avis.
Jipété,
Il s'agit de la fonction stat en C, pas de la commande stat.
J'ai vu pour le faire avec la commande debugfs.
Merci quand même.
A priori, il existe un patch qui implémente ces fonctions étendu (après, cela suppose de la recompilation kernel):
Extended file stat system call
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager