Comando Touch en Linux
El comando touch se puede utilizar para modificar las marcas de tiempo de acceso/modificación de los archivos. En realidad, se utiliza más a menudo para simplemente crear un archivo vacío rápidamente.
Este post muestra algunos ejemplos muy simples y rápidos de usar el comando touch para modificar las marcas de tiempo o crear archivos.
Crear un archivo en blanco
Para simplemente crear un archivo en blanco con el comando touch, utilice la sintaxis siguiente.
$ touch abc.txt
Si el archivo ya existe, se actualizará su tiempo de acceso.
Crear varios archivos con touch
Para crear varios archivos, especifica sus nombres juntos separados por un espacio.
$ touch abc.txt cde.txt xyz.txt
Crear montones y montones de archivos
Si por alguna razón deseas crear montones de archivos, entonces comandos como estos te serán muy útiles
# Create files with names A to Z$ touch {A..Z}# Create files with names 1 to 20$ touch {1..20}# Create files with extension$ touch {1..1000}.txt# Create 10K files$ touch {1..10}{1..1000}
Y luego usar el comando ls para ver todo lo que se ha creado.
Evitar la creación de nuevos archivos
Si quieres sólo actualizar el tiempo de acceso de un archivo existente, sin crearlo, utiliza la opción ‘-c’. Si el archivo existe, touch actualizará el tiempo de acceso, de lo contrario no hará nada
$ touch -c hello.txt
Cambiar el tiempo de acceso del archivo – ‘a’
Para cambiar sólo el tiempo de acceso de un archivo utilice la opción ‘-a’ con el nombre del archivo.
$ touch -a abc.txt
Para comprobar el tiempo de acceso utiliza el comando stat
$ stat a.txt File: ‘a.txt’ Size: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: 801h/2049d Inode: 5904730 Links: 1Access: (0664/-rw-rw-r--) Uid: ( 1000/enlightened) Gid: ( 1000/enlightened)Access: 2016-03-10 15:04:24.281533071 +0530Modify: 2016-03-10 15:00:16.117864128 +0530Change: 2016-03-10 15:04:24.281533071 +0530
Cambiar el tiempo de modificación ‘-m’
Usa la opción ‘-m’ para cambiar la hora de modificación del archivo
$ touch -m a.txtThen check the file statistics with the stat command -$ stat a.txt File: ‘a.txt’ Size: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: 801h/2049d Inode: 5904730 Links: 1Access: (0664/-rw-rw-r--) Uid: ( 1000/enlightened) Gid: ( 1000/enlightened)Access: 2016-03-10 15:04:24.281533071 +0530Modify: 2016-03-10 15:05:03.409475551 +0530Change: 2016-03-10 15:05:03.409475551 +0530
Para cambiar la hora de modificación de múltiples archivos usando el comodín
$ touch -m *.txt
Cambiar la hora de acceso y modificación juntas
Usa la opción a y m juntas para modificar tanto tiempo de acceso y modificación
$ touch -am a.txt
$ stat a.txt File: ‘a.txt’ Size: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: 801h/2049d Inode: 5904730 Links: 1Access: (0664/-rw-rw-r--) Uid: ( 1000/enlightened) Gid: ( 1000/enlightened)Access: 2016-03-10 15:07:39.633235119 +0530Modify: 2016-03-10 15:07:39.633235119 +0530Change: 2016-03-10 15:07:39.633235119 +0530
Establezca una hora de acceso/modificación específica en lugar de la hora actual
Para establecer la hora de acceso/modificación a una fecha específica utilice la opción t y especifique la fecha en formato
YY]MMDDhhmm
$ touch -c -t 1603051015 a.txtor$ touch -c -t 201603051015 a.txt
Nota -. Si se omite la opción c, se creará un nuevo archivo con el datetime dado si no existe.
Utilizar la marca de tiempo de otro archivo como referencia
$ touch -r ref.txt abc.txt
El comando anterior establecerá la hora de acceso/modificación de abc.txt a la de ref.txt
Especificar el tiempo de la fecha como una cadena
Aparte de la opción t, hay otra opción ‘-d’ que acepta el tiempo de la fecha en formatos generales legibles para el ser humano.
El siguiente ejemplo proporciona la fecha solamente. La hora se establece automáticamente a las 00:00
$ touch -c -d '14 Mar' abc.txt
O sólo proporciona la hora, y se seleccionará la fecha actual –
$ touch -d '14:24' abc.txt
Conclusión
Estos fueron algunos de los ejemplos básicos del comando touch. Para aprender más, consulte la página man con el comando «man touch».
O lea las páginas del manual en línea aquí:
https://man7.org/linux/man-pages/man1/touch.1.html
https://linux.die.net/man/1/touch