La page de manuel de la commande stat
indique:
%x Time of last access %y Time of last modification %z Time of last change
Je ne peux pas comprendre la différence entre modifier et changer . Je comprends que les mots sont des synonymes (l'anglais n'est pas ma langue maternelle), mais leur sortie est différente.
J'ai essayé la commande suivante
stat --printf="Change %z\nAccess %x\nModify %y\n" p.txt
Maintenant, lorsque j'ouvre p.txt, le temps d'accès est modifié, je passe en mode insertion, édite le fichier, modifie et change le temps reste le même.
Modifiez le 2010-10-06 12: 48: 39.286252389 +0500 Accédez au 2010-10-06 12:49:14.962243456 +0500 Modifier 2010-10-06 12: 48: 39.234498878 +0500
Lorsque j'écris les modifications dans le fichier :w
, modifie et change, les deux changent mais donnent des valeurs différentes.
Changement 2010-10-06 12:51:21.949082169 +0500 Accédez au 2010-10-06 12: 51: 21.908246082 +0500 Modifiez le 2010-10-06 12:51:21.908246082 +0500
Alors, quelles sont les significations de "modifier" et "changer" dans ce contexte? Autrement dit, le temps de modification et de changement donne le temps de quels événements?
Merci
Cela a déjà été répondu dans cette question , que je cite (texte original par echox ):
Il existe 3 types de "timestamps":
- Accès - la dernière fois que le fichier a été lu
- Modifier - la dernière fois que le fichier a été modifié (le contenu a été modifié)
- Modifier - la dernière fois que les métadonnées du fichier ont été modifiées (par exemple, les autorisations)
Ce post sur StackOverflow explique la différence entre les trois temps différents du point de vue de l'interface de programmation.