La página del manual del comando stat
dice:
%x Time of last access %y Time of last modification %z Time of last change
No puedo entender la diferencia entre modificar y cambiar. Entiendo que las palabras son sinónimos (el inglés no es mi lengua materna), pero su salida es diferente.
Probé el siguiente comando
stat --printf="Change %z\nAccess %x\nModify %y\n" p.txt
Ahora, cuando abro p.txt, el tiempo de acceso cambia, entro en modo de inserción, edito el archivo, modifico y el tiempo de cambio permanece igual.
Cambiar 2010-10-06 12: 48: 39.286252389 +0500 Acceso 2010-10-06 12:49:14.962243456 +0500 Modificar 2010-10-06 12: 48: 39.234498878 +0500
Cuando escribo los cambios en el archivo :w
, modificar y cambiar, ambos cambian pero dan valores diferentes.
Cambiar 2010-10-06 12:51:21.949082169 +0500 Acceso 2010-10-06 12: 51: 21.908246082 +0500 Modificar 2010-10-06 12:51:21.908246082 +0500
Entonces, ¿cuáles son los significados de "modificar" y "cambiar" en este contexto? Es decir, ¿el tiempo de modificación y cambio da tiempo de qué eventos?
Gracias
Esto ya ha sido respondido en esta pregunta , que cito (texto original de echox ):
Hay 3 tipos de "marcas de tiempo":
- Acceso: la última vez que se leyó el archivo
- Modificar: la última vez que se modificó el archivo (se modificó el contenido)
- Cambiar: la última vez que se modificaron los metadatos del archivo (por ejemplo, permisos)
Esta publicación en StackOverflow explica la diferencia entre los tres tiempos diferentes desde el punto de vista de la interfaz de programación.