Las marcas de tiempo son registros de las horas en que se realizan acciones en los archivos. Una marca de tiempo es útil porque mantiene registros de cuándo se accedió, modificó o agregó un archivo. Los archivos de Linux tienen 3 marcas de tiempo registradas por la computadora:
- Marca de tiempo de acceso (atime): que indica la última vez que se accedió a un archivo.
- Marca de tiempo modificada (mtime): que es la última vez que se modificó el contenido de un archivo.
- Change timestamp (ctime): que hace referencia a la última vez que se cambiaron algunos metadatos relacionados con el archivo.
En Linux, una marca de tiempo en realidad se almacena como una cantidad de segundos en lugar de una fecha y hora. Este número de segundos se refiere a la cantidad de tiempo desde las 00:00:00 del 1 de enero de 1970, que es la época de Unix. Sin embargo, cuando un usuario desea que se muestre una marca de tiempo, Linux la traducirá a un formato legible por humanos, de modo que se muestre como fecha y hora. Los usuarios pueden ver las marcas de tiempo usando el comando ls o el comando stat.
mtime:
La marca de tiempo modificada (mtime) indica la última vez que se modificó el contenido de un archivo. Por ejemplo, si se agregaron, eliminaron o reemplazaron nuevos contenidos en un archivo, se cambia la marca de tiempo modificada. Para ver la marca de tiempo modificada, podemos simplemente usar el comando ls con la opción -l.
Syntax: ls -l [filename]
ctime:
A diferencia de mtime, que solo está relacionado con el contenido dentro de un archivo, la marca de tiempo cambiada indica la última vez que se cambiaron algunos metadatos de un archivo. Por ejemplo, si se modificó la configuración de permisos de un archivo, mtime lo indicará. Para ver la marca de tiempo modificada, podemos usar la opción -lc con el comando ls de la siguiente manera:
Syntax: ls -lc [filename]
un momento:
La marca de tiempo de acceso (atime) se refiere a la última vez que un usuario leyó un archivo. Es decir, un usuario mostraba el contenido de un archivo utilizando cualquier programa adecuado, pero no modificaba necesariamente nada. Para ver una marca de tiempo de acceso usando el comando ls, usamos la opción -lu seguida del nombre del archivo.
Syntax: ls -lu [filename]
comando de estadísticas:
El comando stat se puede usar para ver todas las marcas de tiempo de un archivo simultáneamente.
Syntax: stat [filename]
Tabla de comparación
La siguiente tabla resume la diferencia entre las tres marcas de tiempo que mencionamos:
Se modifican los contenidos del archivo | Se modifican los metadatos | Archivo accedido sin modificación | Comando a usar | |
---|---|---|---|---|
mtime | Cambios | Ningún cambio | Ningún cambio | ls -l o estadística |
ctime | Cambios | Cambios | Ningún cambio | ls -cl o estadísticas |
un momento | Cambios | Ningún cambio | Cambios | ls -ul o estadística |
Para explicar más el concepto, examinaremos un archivo llamado test.txt, se realizaron los siguientes cambios en el archivo:
Crear el archivo
El archivo se creó a las 14:04 el 25/03/2021 usando el comando nano. También podemos usar el comando táctil o cualquier editor de texto. Inicialmente, agregamos 1 línea al archivo
Comando para crear archivo:
nano test.txt
Inicialmente, todas las marcas de tiempo muestran la hora en que se creó el archivo. La siguiente imagen muestra un ejemplo del uso del comando stat para ver las 3 marcas de tiempo. En esta imagen, se muestran las marcas de tiempo iniciales, que muestran la hora en que se creó el archivo. El número +004 a la derecha de cada marca de tiempo se conoce como desplazamiento de zona horaria, lo que indica que la zona horaria está +004 horas por delante de UTC. La fecha y la hora mostradas se convierten de UTC a la zona horaria local cuando se muestran al usuario. También podemos notar que el comando stat es muy exacto al mostrar los segundos en una marca de tiempo.
Dominio:
stat test.txt
Alternativamente, el comando ls se puede usar para ver cada marca de tiempo individualmente de la siguiente manera:
Dominio:
mtime: ls -l test.txt ctime: ls -cl test.txt atime: ls -ul test.txt
En los siguientes pasos, haremos algunos cambios en el archivo y observaremos el cambio en las marcas de tiempo usando el comando stat. El comando ls también se puede usar.
Modificar el archivo
Se accedió al archivo y se le agregó una nueva línea a las 14:22 del 25/03/2021 usando el editor de texto nano (se puede usar cualquier editor de texto).
Dominio:
nano test.txt
Usando el comando stat, podemos ver que las 3 marcas de tiempo se cambiaron a 14:22.
Dominio:
stat test.txt
Cambio de metadatos
Los permisos del archivo se cambiaron a las 14:36 del 25/3/2021 usando el comando chmod.
Dominio:
chmod 777 test.txt
Notamos que después de cambiar los permisos, tanto ctime como atime cambiaron a 14:36. Este no es el caso con mtime ya que solo cambia cuando se modifican los contenidos dentro del archivo. Por lo tanto, mtime todavía está a las 14:22.
Dominio:
stat test.txt
Abrir el archivo sin hacer cambios
El archivo se abrió en el editor de texto nano, pero no se realizaron cambios a las 14:55 del 25/3/2021.
Dominio:
nano test.txt
Desde la salida del comando stat, podemos observar que la única marca de tiempo que cambió a 14:55 es la marca de tiempo de acceso. Esto se debe a que no se modificó ningún dato. Por lo tanto, ctime permanece en 14:36 mientras que mtime permanece en 14:22.
Dominio:
stat test.txt
Publicación traducida automáticamente
Artículo escrito por arwaaalkindi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA