Usar el comando touch en Linux con ejemplos

Published:

Touch es un comando de Linux que se utiliza para crear archivos vacíos y cambiar marcas de tiempo de archivos o carpetas. La información de marca de tiempo de los archivos tienen tres atributos: tiempo de acceso, tiempo de modificación y tiempo de cambio.

¿Pero, qué es una marca de tiempo en Linux?

En Linux, cada archivo o carpeta tiene una marca de tiempo que nos da información de cuándo se modificó el contenido de un archivo o sus atributos.
Hay tres tipos de marcas de tiempo:

  • Tiempo de acceso (atime): la última vez que se leyó un archivo.
  • Tiempo de modificación (mtime): la última vez que se modificó el contenido de un archivo. Al igual que el tiempo de acceso, también forma parte de los metadatos del estado de los archivos.
  • Tiempo de cambios realizados (ctime): la última vez que se modificaron los metadatos de un archivo (por ejemplo, permisos)
  • Dado que atime y mtime son parte de los metadatos de estado de un archivo, cambiar atime o mtime de un archivo da como resultado ctime, en el cual se establece automáticamente la fecha actual. No hay forma de configurar o cambiar el ctime manualmente.

Uso del comando touch

1- Crear un archivo usando Touch

touch prueba.txt

2- Crear varios archivos a la vez

touch archivo1.txt archivo2.txt archivo3.txt archivo4-txt

3- Crear archivos en forma secuencial, en vez de hacerlo de a uno como el punto 2, podemos crearlos de una vez.

touch archivo{1..4}.txt

3.1- Pero se puede usar con letras

touch archivo{a..z}.txt

4- Cambiar el tiempo de modificación con Touch

tocuh -m archivo1.txt

5- Cambiar el tiempo de acceso y de modificación con Touch

touch -am archivo1.txt

6- Cambiar el tiempo de acceso sin crear un nuevo archivo

touch -c archivo1.txt

7- Establecer un tiempo de acceso y de modificación específicos con Touch

touch -t 202203231150.30 archivo1.txt

El formato de fecha y hora respetan la estructura CCYYMMDDhhmm.ss donde:

  • CC: los dos primeros dígitos del año
  • YY: los dos segundos dígitos del año
  • MM: El mes del año [01-12]
  • DD: El día del mes [01-31]
  • hh: La hora del día [00-23]
  • Mm: El minuto de la hora [00-59]
  • SS: El segundo del minuto [00-59]

7.1- Verificación de los cambios

stat archivo1.txt

8- Cambiar la marca de tiempo de un archivo que esta vinculado simbólicamente

Se puede cambiar la marca de tiempo de un enlace simbólico, que en realidad apunta a un archivo.

touch -h enlace_simbólico

9- Establecer la marca de tiempo de otro archivo como referencia, primero va el archivo del que copiaremos la metadata y luego el archivo al que se aplicará esa info.

touch -r referencia.txt archivo.txt

10- Actualizar el tiempo de acceso de ahora mismo

touch -a archivo1.txt

11- Si queremos que se actualice a mañana podemos hacer

touch -d tomorrow archivo1.txt

12- Actualizar a 5 años atrás

touch -d "5 years ago"
- Advertisement -
Jorge
Jorgehttps://nksistemas.com
Soy Jorge, Sr Sysadmin Linux/DevOps/SRE y creador de NKSistemas.com Trabajo con plataformas: Linux, Windows, AWS, GCP, VMware, Helm, kubernetes, Docker, etc.

Related articles