Cree nuevos archivos vacíos o actualice las marcas de tiempo de los archivos / directorios existentes fácilmente con el comando "touch"
La principal aplicación de la tocar
comando es crear archivos sin ningún contenido. La creación de archivos vacíos puede parecer un desperdicio de la memoria del sistema, pero aquí hay un problema. tocar
El comando está a su disposición cuando desee crear marcas de tiempo o registros mientras trabaja en un proyecto grande que requiere mantenimiento y monitoreo de registros. Simplemente puede crear un archivo vacío usando tocar
comando y el archivo tendrá el sello de fecha y hora cuando fue creado. (En la información del archivo y no como el contenido del archivo).
El segundo uso importante del tocar
El comando es modificar la hora de acceso y modificación de un archivo. Cada archivo / directorio tiene una marca de tiempo única agregada. Muestra el tiempo de Acceso y Modificación del archivo / directorio. Pero esta información se puede cambiar fácilmente usando el tocar
mando.
Veamos el uso de tocar
comando en más detalles con ejemplos autoexplicativos.
Opciones utilizadas con tocar
mando
Hay varias opciones disponibles para usar con el tocar
mando.
Opción | Descripción |
---|---|
-a | cambiar la hora de acceso al archivo |
-metro | cambiar la hora de modificación del archivo |
-C | cambiar la hora de acceso al archivo sin crear uno nuevo |
-r | use un archivo de referencia para configurar las marcas de tiempo del archivo o directorio |
-D | establecer la misma marca de tiempo arbitraria para el tiempo de acceso y modificación utilizando una fecha legible por humanos de formato libre |
-t | crear un archivo usando un tiempo especificado |
Utilizando tocar
Mando
El tocar
El comando se puede usar para crear archivos vacíos sin usar ninguna opción. Siga los ejemplos que se dan a continuación para crear archivos vacíos únicos y múltiples.
Para crear un archivo vacío
Puedes usar el tocar
comando sin ninguna opción para crear un solo archivo vacío.
Sintaxis:
toca [nombre de archivo]
Ejemplo:
gaurav @ ubuntu: ~ / espacio de trabajo $ touch iift.txt
Aquí he creado un archivo llamado iift.txt usando tocar
mando. Utilizar el ls
comando para ver si se crea el archivo.
gaurav @ ubuntu: ~ / espacio de trabajo $ ls iift.txt init1 init2 init3 init4
Para ver la información del archivo, puede utilizar el estadística
comando de la siguiente manera.
gaurav @ ubuntu: ~ / workspace $ stat iift.txt Archivo: iift.txt Tamaño: 0 Bloques: 0 Bloque IO: 4096 archivo vacío normal Dispositivo: 808h / 2056d Inode: 1990385 Enlaces: 1 Acceso: (0644 / -rw-r --r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-14 10: 18: 43.318160860 +0530 Modificar: 2020-09-14 10: 18: 43.318160860 +0530 Cambiar: 2020-09-14 10: 18: 43.318160860 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
Para crear varios archivos vacíos
Si desea crear varios archivos vacíos a la vez, puede utilizar el tocar
comando de la siguiente manera.
Sintaxis:
toque [nombre de archivo-1] [nombre de archivo-2] [nombre de archivo-3]
Ejemplo:
gaurav @ ubuntu: ~ / espacio de trabajo $ touch log1.txt ssh.txt filemove.c gaurav @ ubuntu: ~ / espacio de trabajo $ ls -l total 36 -rw-r - r-- 1 gaurav gaurav 0 14 de septiembre 10:35 filemove .c -rw-r - r-- 1 gaurav gaurav 0 14 de septiembre 10:18 iift.txt -rw-r - r-- 1 gaurav gaurav 0 14 de septiembre 10:35 log1.txt -rw-r-- r-- 1 gaurav gaurav 0 14 de septiembre 10:35 ssh.txt
Aquí he creado tres archivos "log1.txt", "ssh.txt" y "filemove.c". Estos tienen diferentes extensiones de archivo.
También puede crear archivos vacíos de forma masiva de la siguiente manera.
Sintaxis:
toque [nombre de archivo] - {1..n} .txt
Ejemplo:
Crearemos 10 archivos a saber. sheldon_log-1.txt, sheldon_log-2.txt y así sucesivamente hasta sheldon_log-10.txt
gaurav @ ubuntu: ~ / espacio de trabajo $ touch sheldon_log- {1..0} .txt gaurav @ ubuntu: ~ / espacio de trabajo $
gaurav @ ubuntu: ~ / espacio de trabajo $ ls filemove.c iift.txt sheldon_log-10.txt sheldon_log-2.txt sheldon_log-4.txt sheldon_log-6.txt sheldon_log-8.txt gsy.c log1.txt sheldon_log-1. txt sheldon_log-3.txt sheldon_log-5.txt sheldon_log-7.txt sheldon_log-9.txt gaurav @ ubuntu: ~ / espacio de trabajo $
Cambiar o modificar la hora de acceso al archivo o directorio
La marca de tiempo de acceso es la última vez que se leyó un archivo. Siempre que un usuario lee un archivo, se actualiza la marca de tiempo de acceso para ese archivo. La marca de tiempo de acceso indica la hora en la que se accedió por última vez al archivo. No se está realizando ninguna modificación con este archivo o directorio, solo se hace referencia a él o se lee.
Utilizando tocar
comando con opción -a
modifica el "tiempo de acceso" de un archivo en particular. La nueva "Hora de acceso" se establecerá en la fecha y hora actuales. Para comprobar el tiempo de acceso actual y el tiempo de modificación, utilice el estadística
mando.
Modificar archivo
Sintaxis:
toque -a [nombre de archivo]
Ejemplo:
Veremos el tiempo de acceso actual del archivo a modificar.
gaurav @ ubuntu: ~ / workspace $ stat log1.txt Archivo: log1.txt Tamaño: 0 Bloques: 0 Bloque IO: 4096 archivo vacío normal Dispositivo: 808h / 2056d Inode: 2001385 Enlaces: 1 Acceso: (0644 / -rw-r --r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-13 23: 52: 19.305416141 +0530 Modificar: 2020-09-13 23: 52: 00.215090207 +0530 Cambiar: 2020-09-13 23: 52: 19.305416141 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
Utilizando tocar -a
para cambiar la Hora de acceso del archivo log1.txt a la fecha y hora actual.
Producción:
gaurav @ ubuntu: ~ / espacio de trabajo $ touch -a log1.txt gaurav @ ubuntu: ~ / espacio de trabajo $
gaurav @ ubuntu: ~ / workspace $ stat log1.txt Archivo: log1.txt Tamaño: 0 Bloques: 0 Bloque IO: 4096 archivo vacío normal Dispositivo: 808h / 2056d Inode: 2001385 Enlaces: 1 Acceso: (0644 / -rw-r --r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-14 10: 59: 24.972855176 +0530 Modificar: 2020-09-13 23: 52: 00.215090207 +0530 Cambiar: 2020-09-14 10: 59: 24.972855176 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
Puede observar que ahora se modifica el tiempo de acceso al archivo log1.txt.
Modificar directorio
tocar -a
también se puede utilizar para modificar el tiempo de acceso de un directorio de la misma forma que se hace para un archivo.
Sintaxis:
toque -a [ruta_directorio]
Ejemplo:
gaurav @ ubuntu: ~ $ stat ./workspace/tomcat Archivo: ./workspace/tomcat Tamaño: 4096 Bloques: 8 Bloque IO: directorio 4096 Dispositivo: 808h / 2056d Código: 2039942 Enlaces: 3 Acceso: (0775 / drwxrwxr-x) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2018-03-30 11: 18: 28.912666800 +0530 Modificar: 2018-03-30 00: 13: 02.452194000 +0530 Cambio: 2020-09-14 11 : 18: 28.912666800 +0530 Nacimiento: -
Utilizando tocar -a
para modificar el tiempo de acceso al directorio tomcat.
gaurav @ ubuntu: ~ $ touch -a ./workspace/tomcat
gaurav @ ubuntu: ~ $ stat ./workspace/tomcat Archivo: ./workspace/tomcat Tamaño: 4096 Bloques: 8 Bloque IO: directorio 4096 Dispositivo: 808h / 2056d Código: 2039942 Enlaces: 3 Acceso: (0775 / drwxrwxr-x) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-14 11: 21: 10.638538949 +0530 Modificar: 2018-03-30 00: 13: 02.452194000 +0530 Cambio: 2020-09-14 11 : 21: 10.638538949 +0530 Nacimiento: - gaurav @ ubuntu: ~ $
Aquí, la hora de acceso al directorio "tomcat" ahora se cambia a la fecha y hora actual.
Cambiar la hora de modificación del archivo / directorio
El tiempo de modificación significa la última vez que se modificó el contenido de un archivo. Un programa o proceso editó o modificó el archivo. “Modificado” significa que algo dentro del archivo se modificó, eliminó o se agregaron nuevos datos.
Utilizando tocar
comando junto con la opción -metro
modifica el "tiempo de modificación" de un archivo o directorio. Los siguientes métodos se pueden implementar para archivos y directorios.
Para archivo
toque -m [nombre de archivo]
Ejemplo:
En primer lugar, usando estadística
comando para mostrar la hora de modificación del archivo.
gaurav @ ubuntu: ~ / workspace $ stat iift.txt Archivo: iift.txt Tamaño: 66 Bloques: 8 Bloque IO: 4096 archivo regular Dispositivo: 808h / 2056d Inode: 1990385 Enlaces: 1 Acceso: (0644 / -rw-r- -r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-14 11: 33: 36.927262587 +0530 Modificar: 2020-09-12 08: 33: 28.339190370 +0530 Cambio: 2020 -09-12 08: 33: 28.339190370 +0530
Ahora usa el tocar -m
comando para modificar el tiempo de modificación.
gaurav @ ubuntu: ~ / espacio de trabajo $ touch -m iift.txt
gaurav @ ubuntu: ~ / workspace $ stat iift.txt Archivo: iift.txt Tamaño: 66 Bloques: 8 Bloque IO: 4096 archivo regular Dispositivo: 808h / 2056d Inode: 1990385 Enlaces: 1 Acceso: (0644 / -rw-r- -r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-14 11: 33: 36.927262587 +0530 Modificar: 2020-09-14 11: 34: 34.719723531 +0530 Cambio: 2020 -09-14 11: 34: 34.719723531 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
La "hora de modificación" del archivo iift.txt
ahora se cambia a la fecha y hora actuales.
Para directorio
toque -m [ruta_directorio] O [nombre_directorio]
Ejemplo:
Cambiaremos el tiempo de modificación del directorio llamado 'tomcat' usando el tocar -m
mando. Averigüemos su "tiempo de modificación" actual utilizando el estadística
mando.
gaurav @ ubuntu: ~ / workspace $ stat tomcat Archivo: tomcat Tamaño: 4096 Bloques: 8 Bloque IO: directorio 4096 Dispositivo: 808h / 2056d Inode: 2039942 Enlaces: 3 Acceso: (0775 / drwxrwxr-x) Uid: (1000 / gaurav ) Gid: (1000 / gaurav) Acceso: 2020-09-14 11: 21: 10.638538949 +0530 Modificar: 2019-07-12 11: 43: 22.482485281 +0530 Cambio: 2019-07-12 11: 43: 22.482485281 +0530 Nacimiento: -
Producción:
gaurav @ ubuntu: ~ / espacio de trabajo $ touch -m tomcat
gaurav @ ubuntu: ~ / workspace $ stat tomcat Archivo: tomcat Tamaño: 4096 Bloques: 8 Bloque IO: directorio 4096 Dispositivo: 808h / 2056d Inode: 2039942 Enlaces: 3 Acceso: (0775 / drwxrwxr-x) Uid: (1000 / gaurav ) Gid: (1000 / gaurav) Acceso: 2020-09-14 11: 21: 10.638538949 +0530 Modificar: 2020-09-14 11: 43: 22.482485281 +0530 Cambio: 2020-09-14 11: 43: 22.482485281 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
Aquí, he cambiado la marca de tiempo de modificación para el directorio "tomcat".
Cambiar el tiempo de acceso sin crear un archivo nuevo
tocar
comando cuando se ejecuta, crea un nuevo archivo vacío. Pero pueden ocurrir algunos casos en los que el archivo ya está creado y solo desea modificar el tiempo de acceso de ese archivo sin crear uno nuevo.
En esta situación, puede utilizar tocar
comando con el -C
opción que evita la creación de un nuevo archivo y aún le permite modificar la marca de tiempo de acceso.
Sintaxis:
toque -c [nombre de archivo]
Ejemplo:
gaurav @ ubuntu: ~ / espacio de trabajo $ touch -c iift.txt gaurav @ ubuntu: ~ / espacio de trabajo $ ls demo gsy.c log1.txt sheldon_log-1.txt sheldon_log-3.txt sheldon_log-5.txt sheldon_log-7.txt sheldon_log-9.txt filemove.c iift.txt sheldon_log-10.txt sheldon_log-2.txt sheldon_log-4.txt sheldon_log-6.txt sheldon_log-8.txt tomcat gaurav @ ubuntu: ~ / espacio de trabajo $
Del mismo modo, puede cambiar la hora de acceso del directorio ya existente. Puede utilizar el siguiente método para hacerlo.
Ejemplo:
Visualización de la marca de tiempo de acceso actual del directorio tomcat.
gaurav @ ubuntu: ~ / workspace $ stat tomcat Archivo: tomcat Tamaño: 4096 Bloques: 8 Bloque IO: directorio 4096 Dispositivo: 808h / 2056d Inode: 2039942 Enlaces: 3 Acceso: (0775 / drwxrwxr-x) Uid: (1000 / gaurav ) Gid: (1000 / gaurav) Acceso: 2020-09-14 11: 21: 10.638538949 +0530 Modificar: 2020-09-14 11: 43: 22.482485281 +0530 Cambio: 2020-09-14 11: 43: 22.482485281 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
gaurav @ ubuntu: ~ / espacio de trabajo $ touch -c tomcat
Aquí, he cambiado la hora de acceso del directorio ya existente "tomcat".
Producción:
gaurav @ ubuntu: ~ / workspace $ stat tomcat Archivo: tomcat Tamaño: 4096 Bloques: 8 Bloque IO: directorio 4096 Dispositivo: 808h / 2056d Inode: 2039942 Enlaces: 3 Acceso: (0775 / drwxrwxr-x) Uid: (1000 / gaurav ) Gid: (1000 / gaurav) Acceso: 2020-09-14 20: 18: 52.625031128 +0530 Modificar: 2020-09-14 20: 18: 52.625031128 +0530 Cambio: 2020-09-14 20: 18: 52.625031128 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
Comprobación cruzada de la salida:
gaurav @ ubuntu: ~ / espacio de trabajo $ touch -c temp.cpp gaurav @ ubuntu: ~ / espacio de trabajo $ ls temp.cpp ls: no se puede acceder a 'temp.cpp': no existe tal archivo o directorio gaurav @ ubuntu: ~ / espacio de trabajo $
Aquí, traté de usar toque -c
con temp.cpp
. Este archivo no existe. Por lo tanto, podemos decir que usando tocar
con opcion -C
evita la creación de nuevos archivos vacíos y modifica la marca de tiempo solo para el archivo existente.
Modificación de la marca de tiempo de acceso y modificación a una fecha y hora específicas
En los bloques anteriores, debes haber observado que siempre que usamos el tocar
comando para cambiar las marcas de tiempo, se cambia a la hora y fecha actuales.
Sin embargo, puede haber casos en los que necesite utilizar una fecha y hora personalizadas. Utilizando tocar
comando con -C
y -t
las opciones pueden servir al propósito.
Ejemplo:
Cambiaré la marca de tiempo de acceso y modificación en el archivo iift.txt a una fecha y hora personalizadas.
gaurav @ ubuntu: ~ / workspace $ stat iift.txt Archivo: iift.txt Tamaño: 66 Bloques: 8 Bloque IO: 4096 archivo regular Dispositivo: 808h / 2056d Inode: 1990385 Enlaces: 1 Acceso: (0644 / -rw-r- -r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-14 12: 04: 07.091786565 +0530 Modificar: 2020-09-14 12: 04: 07.091786565 +0530 Cambio: 2020 -09-14 12: 04: 07.091786565 +0530 Nacimiento: -
La fecha y la hora se pueden especificar en el formato: {CCYY} MMDDhhmm.ss
Parámetro | Descripción |
CC | Primeros dos dígitos de un año |
YY | Segundos dos dígitos de un año |
MM | Mes del año (01-12) |
DD | Día del mes (01-31) |
S.S | Hora del día (00-23) |
mm | Minutos de la hora (00-59) |
Estoy usando el sello de fecha como 203011051820 (es decir, 5 de noviembre de 2030, 18:20 horas).
gaurav @ ubuntu: ~ / espacio de trabajo $ touch -c -t 203011051820 iift.txt
Este comando cambiará la marca de tiempo de Acceso y Modificación para el archivo iift.txt como sigue.
gaurav @ ubuntu: ~ / workspace $ stat iift.txt Archivo: iift.txt Tamaño: 66 Bloques: 8 Bloque IO: 4096 archivo regular Dispositivo: 808h / 2056d Inode: 1990385 Enlaces: 1 Acceso: (0644 / -rw-r- -r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2030-11-05 18: 20: 00.000000000 +0530 Modificar: 2030-11-05 18: 20: 00.000000000 +0530 Cambio: 2020 -09-14 20: 39: 55.641781140 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
Uso de un archivo de referencia para establecer la marca de tiempo
tocar
El comando también se puede usar con la opción -r
para utilizar la marca de tiempo de un archivo de referencia de su elección en su archivo actual.
Sintaxis:
touch -r [archivo_de_referencia] [archivo_real]
Ejemplo:
Usaremos gsy.c
archivo como archivo de referencia. Entonces, las marcas de tiempo de gsy.c
se utilizará para el archivo iift.txt
. Comprobemos las marcas de tiempo actuales de ambos archivos primero con estadística
mando.
gaurav @ ubuntu: ~ / workspace $ stat gsy.c Archivo: gsy.c Tamaño: 0 Bloques: 0 Bloque IO: 4096 archivo vacío normal Dispositivo: 808h / 2056d Inode: 2001385 Enlaces: 1 Acceso: (0644 / -rw-r --r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-14 10: 59: 24.972855176 +0530 Modificar: 2020-09-13 23: 52: 00.215090207 +0530 Cambiar: 2020-09-14 10: 59: 24.972855176 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $ stat iift.txt Archivo: iift.txt Tamaño: 66 Bloques: 8 IO Bloque: 4096 archivo regular Dispositivo: 808h / 2056d Inode : 1990385 Enlaces: 1 Acceso: (0644 / -rw-r - r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2025-10-19 18: 20: 00.000000000 +0530 Modificar: 2025-10-19 18: 20: 00.000000000 +0530 Cambio: 2020-09-14 20: 39: 55.641781140 +0530
Usando el comando toque -r
ahora.
gaurav @ ubuntu: ~ / espacio de trabajo $ touch -r gsy.c iift.txt
Producción:
gaurav @ ubuntu: ~ / workspace $ stat iift.txt Archivo: iift.txt Tamaño: 66 Bloques: 8 Bloque IO: 4096 archivo regular Dispositivo: 808h / 2056d Inode: 1990385 Enlaces: 1 Acceso: (0644 / -rw-r- -r--) Uid: (1000 / gaurav) Gid: (1000 / gaurav) Acceso: 2020-09-14 10: 59: 24.972855176 +0530 Modificar: 2020-09-13 23: 52: 00.215090207 +0530 Cambio: 2020 -09-14 21: 04: 27.640026328 +0530 Nacimiento: - gaurav @ ubuntu: ~ / workspace $
En la salida, podemos ver que las marcas de tiempo del archivo iift.txt
ha cambiado. Las nuevas marcas de tiempo ahora son similares a las del archivo de referencia gsy.c
Conclusión
En este tutorial, aprendimos sobre la tocar
comando y varias opciones disponibles con él para crear nuevos archivos vacíos y modificar las marcas de tiempo de los archivos existentes de varias maneras.