Was ist der Unterschied zwischen "modify" und "change in stat" -Befehlskontext?

132

Die statHandbuchseite des Befehls lautet:

   %x     Time of last access
   %y     Time of last modification
   %z     Time of last change

Ich kann den Unterschied zwischen modifizieren und ändern nicht verstehen . Ich verstehe, dass die Wörter Synonyme sind (Englisch ist nicht meine Muttersprache), aber ihre Ausgabe ist unterschiedlich.

Ich habe den folgenden Befehl ausprobiert

stat --printf="Change %z\nAccess %x\nModify %y\n" p.txt

Wenn ich jetzt p.txt öffne, wird die Zugriffszeit geändert, ich gehe in den Einfügemodus, bearbeite die Datei, ändere und ändere die Zeit bleibt gleich.

Änderung 06.10.2010 12: 48: 39.286252389 +0500
Access 2010-10-06 12:49:14. 962243456 +0500
Ändern Sie 2010-10-06 12: 48: 39.234498878 +0500

Wenn ich die Änderungen in die Datei schreibe :w, ändern und ändern, ändern sich beide, geben aber unterschiedliche Werte an.

Ändern Sie 2010-10-06 12:51:21. 949082169 +0500
Access 2010-10-06 12: 51: 21.908246082 +0500
Ändern Sie 2010-10-06 12:51:21. 908246082 +0500

Was bedeutet in diesem Zusammenhang "modifizieren" und "ändern"? Das heißt, Zeitpunkt der Modifikation und Veränderung geben Zeitpunkte für welche Ereignisse an?

Vielen Dank

Andrew-Dufresne
quelle
8
Um es noch lustiger zu machen, --helpliest es in meiner Sprache so etwas wie "Letzte Änderung" und "Letzte Änderung", da wir keine zwei Wörter für "Ändern / Ändern" haben.
Camilo Martin
1
@CamiloMartin, das ist ein furchtbarer Nachteil für den Übersetzer. Wenn Sie Englisch sprechen, empfehle ich, nur die englische Umgebung zu verwenden - viel einfacher, die Absicht des ursprünglichen Dokumentationsautors zu verstehen und auch viel einfacher, online Hilfe zu finden.
Ján Lalinský

Antworten:

145

Dies wurde bereits in dieser Frage beantwortet , die ich zitiere (Originaltext von Echox ):

Es gibt 3 Arten von "Zeitstempeln":

  • Zugriff - das letzte Mal, wenn die Datei gelesen wurde
  • Ändern - der letzte Zeitpunkt, zu dem die Datei geändert wurde (Inhalt wurde geändert)
  • Ändern - das letzte Mal, wenn Metadaten der Datei geändert wurden (z. B. Berechtigungen)

In diesem Beitrag zu StackOverflow wird der Unterschied zwischen den drei verschiedenen Zeitpunkten aus Sicht der Programmierschnittstelle erläutert.

Riccardo Murri
quelle