Aprende qué es el comando touch en Linux, para qué sirve y cómo usar sus opciones principales con ejemplos claros y prácticos. Guía completa paso a paso.
¿Qué es el comando touch en Linux?
touch en Linux sirve principalmente para crear archivos vacíos si no existen, y para actualizar las marcas de tiempo (acceso y modificación) de archivos o directorios existentes a la hora actual del sistema, siendo muy útil para gestionar archivos sin contenido o para scripts de automatización.
¿Cómo es la sintaxis del comando touch?
touch [opción] [archivo]
Si el comando se utiliza sin opciones, se cambia la marca de tiempo del archivo mencionado a la hora actual del sistema operativo o se crea un nuevo archivo con el nombre indicado en el comando. Si quieres definir la fecha y hora personalmente, tienes varias opciones a tu disposición que te pueden ayudar.
Opciones de touch
-a – Actualizar solo el tiempo de acceso
Actualiza únicamente el timestamp de acceso (atime), sin modificar el de cambio.
touch -a archivo.txt
Útil cuando se desea simular que un archivo fue leído.
-m – Actualizar solo el tiempo de modificación
Actualiza únicamente el timestamp de modificación (mtime).
touch -m archivo.txt
Es común en procesos de compilación o despliegue.
-c o --no-create – No crear archivos nuevos
Evita que se cree el archivo si no existe.
touch -c archivo_inexistente.txt
Muy útil en scripts donde no se desea generar archivos accidentalmente.
-d – Establecer una fecha y hora específica
Permite definir manualmente la fecha y hora del archivo.
touch -d "2024-01-15 10:30:00" archivo.txt
Acepta múltiples formatos de fecha reconocidos por el sistema.
-t – Establecer fecha y hora en formato específico
Utiliza el formato [[CC]YY]MMDDhhmm[.ss].
touch -t 202401151030 archivo.txt
Es más rígido que -d, pero muy usado en automatización.
-r – Copiar timestamps desde otro archivo
Copia las fechas de acceso y modificación desde un archivo de referencia.
touch -r archivo_origen.txt archivo_destino.txt
Ideal para mantener coherencia de fechas entre archivos.
Ejemplo y practica
Crear un archivo simple
touch archivo.txt
Verificamos con stat la información:
stat archivo.txt
La respuesta será
File: archivo.txt
size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 801h/2049d Inode: 250901 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1003/oscardevops) Gid: ( 1004/oscardevops)
Access: 2026-01-19 15:21:27.048663506 +0000
Modify: 2026-01-19 15:21:27.048663506 +0000
Change: 2026-01-19 15:21:27.048663506 +0000
Birth: 2026-01-19 15:21:27.048663506 +0000
Crear múltiples archivos
Se pueden crear varios archivos a la ves de la siguiente forma:
touch archivo1.txt archivo2.txt archivo3.txt
Si ejecutamos ls podemos ver los archivos creados.
Crear multiples archivos con variables
Se definen las variables en la terminal y se expresan con {}
touch archivo{1..3}.txt
Si ejecutamos ls podemos ver los archivos creados
Cambiar tiempo
touch -a archivo.txt
Ejecutamos
stat archivo.txt
Como respuesta vemos que la fecha de modificacion ha cambiado
Access: 2026-01-19 15:44:33.029124446 +0000
Modify: 2026-01-19 15:39:52.727768834 +0000
Change: 2026-01-19 15:44:33.027569945 +0000
Birth: 2026-01-19 15:39:52.727768834 +0000
Cambia el tiempo de modificación
touch -m archivo.txt
Ejecutamos
stat archivo.txt
Resultado
Access: 2026-01-19 15:21:27.048663506 +0000
Modify: 2026-01-19 15:28:49.495924329 +0000
Change: 2026-01-19 15:28:49.494917380 +0000
Birth: 2026-01-19 15:21:27.048663506 +0000
Preguntas frecuentes
¿Para qué sirve el comando touch en Linux?
Se utiliza para crear archivos vacíos o actualizar las fechas de acceso y modificación de archivos existentes.
¿El comando touch sobrescribe archivos?
No. touch no modifica el contenido de un archivo existente.
¿Cuál es la diferencia entre touch -a y touch -m?
-a modifica el tiempo de acceso, mientras que -m modifica el tiempo de modificación.
¿Touch crea archivos si no existen?
Sí, a menos que se use la opción -c.
¿Se puede cambiar la fecha de un archivo con touch?
Sí, usando las opciones -d o -t.