9 ejemplos útiles de Touch Command en Linux

Qué tal me llamo Kiko. Os traigo un nuevo post sobre el sistema operativo mas molón. Un placer linuxeros.

Toque el comando en Linux

Toca el comando en Linux, se utiliza para cambiar las marcas de tiempo de los archivos, pero uno de los comandos táctiles más utilizados implica la creación de un nuevo archivo en blanco.

Con el comando táctil puede cambiar el acceso, cambiar y cambiar la hora de archivos y carpetas en Linux. Puede actualizar la marca de tiempo o cambiarla a la fecha pasada.

La sintaxis de un comando táctil es bastante simple:

touch [option] file

Nuevamente, ¿cuáles son las características distintivas de los archivos de Linux?

Escribí en detalle sobre la marca de tiempo en Linux en un artículo anterior. Recomendaría leerlo para una mejor y más clara comprensión. Para un recordatorio rápido, enumeraré las marcas de tiempo aquí:

hora de acceso: última vez que se accedió a un archivo, hora de cambio: última vez que se modificó un archivo, hora de cambio: última vez que los metadatos de un archivo (resolución de archivo, propiedad, etc.) han cambiado

Puede ver las marcas de tiempo de un archivo usando el comando stat de la siguiente manera:

stat abhi.txt 
  File: abhi.txt
  Size: 10        	Blocks: 8          IO Block: 4096   regular file
Device: 10305h/66309d	Inode: 11940163    Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/abhishek)   Gid: ( 1000/abhishek)
Access: 2018-09-02 14:12:24.476483367 +0530
Modify: 2018-09-02 14:12:24.476483367 +0530
Change: 2018-09-02 14:12:24.476483367 +0530
 Birth: -

El comando Stat incluso muestra el número de inodo del archivo.

9 ejemplos prácticos de comandos táctiles en Linux

Ahora veamos cómo usar el comando táctil con algunos ejemplos simples pero útiles.

1. Crea un archivo en blanco

Como mencioné anteriormente, este es el comando táctil más utilizado. Todo lo que tienes que hacer es tocar el nombre del archivo.

touch <filename>

Esto creará un archivo vacío si no existe.

touch empty_file
ls -l empty_file 
-rw-r--r-- 1 abhishek abhishek 0 Sep  2 14:37 empty_file

Pero, ¿y si el archivo ya existe? En este caso, actualizará las tres marcas de tiempo del archivo a la hora actual.

2. Crea varios archivos vacíos

También puede utilizar la función táctil para crear más de un archivo vacío. Simplemente proporcione los nombres de los archivos que desea crear.

touch <file1> <file2> <file3>

Si le resulta tedioso escribir todos los nombres de archivos, puede generarlos automáticamente de esta manera:

touch new-file-1..10.txt

Esto creará new-file-1.txt, new-file-2.txt a new-file-10.txt.

3. Evite crear un archivo táctil si no existe

Al tocar, se actualizarán las marcas de tiempo del archivo de entrada, si existe, y se creará un archivo en blanco si el archivo de entrada no existe.

Pero, ¿qué pasa si no quieres un toque para crear un nuevo archivo en blanco? Desea actualizar las marcas de tiempo del archivo, pero si el archivo no existe, no debe crearse.

Puede usar el comando táctil con la opción -c en tales casos:

touch -c <filename>

Recuerdo: Al tocar se creará un nuevo archivo vacío, si no existe, se modificarán las marcas de tiempo del archivo existente. Puede dejar de crear un nuevo archivo con la opción -c.

4. Cambiar todas las marcas de tiempo de un archivo

Si usa un toque de un archivo existente, cambiará el acceso y cambiará la hora de ese archivo.

Por ejemplo, tengo este archivo llamado sherlock.txt con las siguientes marcas de tiempo:

stat sherlock.txt 
  File: sherlock.txt
  Size: 356       	Blocks: 8          IO Block: 4096   regular file
Device: 10305h/66309d	Inode: 11928277    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/abhishek)   Gid: ( 1000/abhishek)
Access: 2018-08-25 09:44:56.092937000 +0530
Modify: 2018-08-09 09:41:05.028309000 +0530
Change: 2018-08-25 09:44:56.096937182 +0530

Si utilizo un toque de este comando, todas las marcas de tiempo se cambiarán a las actuales.

touch sherlock.txt 
stat sherlock.txt 
  File: sherlock.txt
  Size: 356       	Blocks: 8          IO Block: 4096   regular file
Device: 10305h/66309d	Inode: 11928277    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/abhishek)   Gid: ( 1000/abhishek)
Access: 2018-09-02 15:22:47.017037942 +0530
Modify: 2018-09-02 15:22:47.017037942 +0530
Change: 2018-09-02 15:22:47.017037942 +0530
 Birth: -

Nota: no tiene que preocuparse por ctime. Esta es una propiedad del sistema y el usuario no puede / no debe controlarla. Su enfoque debe estar en el acceso y el cambio de horario.

5. Actualice solo la hora de acceso al archivo

Es posible que no siempre desee cambiar todas las marcas de tiempo de un archivo. Si solo desea cambiar la hora de acceso al archivo, puede usar la opción -a touch.

touch -a sherlock.txt 
stat sherlock.txt 
  File: sherlock.txt
  Size: 356       	Blocks: 8          IO Block: 4096   regular file
Device: 10305h/66309d	Inode: 11928277    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/abhishek)   Gid: ( 1000/abhishek)
Access: 2018-09-02 15:29:08.796926093 +0530
Modify: 2018-09-02 15:22:47.017037942 +0530
Change: 2018-09-02 15:29:08.796926093 +0530
 Birth: -

6. Actualice solo el cambio de hora del archivo

Si solo desea actualizar la hora de modificación del archivo al sello actual, use la opción -m en el comando táctil.

touch -m sherlock.txt 
stat sherlock.txt 
  File: sherlock.txt
  Size: 356       	Blocks: 8          IO Block: 4096   regular file
Device: 10305h/66309d	Inode: 11928277    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/abhishek)   Gid: ( 1000/abhishek)
Access: 2018-09-02 15:29:08.796926093 +0530
Modify: 2018-09-02 15:31:25.770866881 +0530
Change: 2018-09-02 15:31:25.770866881 +0530
 Birth: -

7. Use marcas de tiempo en otro archivo

También puede usar las marcas de tiempo de otro archivo como referencia a la opción -r de la siguiente manera:

touch -r <source_file> <target_file>

Esto establecerá el tiempo de acceso y cambio del archivo de destino, al igual que el tiempo de acceso y cambio del archivo de salida.

8. Establezca una hora específica de acceso y modificación.

Es posible que haya notado que en casi todos los casos (excepto en el archivo de referencia) las marcas de tiempo cambian a las actuales.

Pero no estás obligado por eso. El tacto le permite establecer el tiempo de acceso y modificar una fecha pasada o futura. Puede utilizar la opción -t y la marca de tiempo en el siguiente formato:

[[CC]AA]MMDDhhmm[.ss]

CC – Primeros dos dígitos del año YY – Segundo dos dígitos del año MM – Mes del año (01-12) DD – Día del mes (01-31) hh – Hora del día (00-23) mm – Minuto de la hora 00-59) ss – Segundos (00-59)

En el caso anterior, CC es opcional. De hecho, CCYY también es opcional, en cuyo caso tomará el año en curso. Del mismo modo, los segundos también son opcionales, el valor predeterminado es 00.

Déjame mostrarte un ejemplo cambiando la marca de tiempo a 12021301, es decir, 12º mes, segundo día, 13ª hora y primer minuto del año actual:

touch -t 12021301 agatha.txt 
stat agatha.txt 
  File: agatha.txt
  Size: 457       	Blocks: 8          IO Block: 4096   regular file
Device: 10305h/66309d	Inode: 11928279    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/abhishek)   Gid: ( 1000/abhishek)
Access: 2018-12-02 13:01:00.000000000 +0530
Modify: 2018-12-02 13:01:00.000000000 +0530
Change: 2018-09-02 15:59:47.588680901 +0530
 Birth: -

Si intenta ingresar una fecha no válida, verá un error. También notará que la hora de cambio usa el sello actual, no lo mismo que el acceso y el cambio. Porque esta es una propiedad del sistema.

También puede utilizar el comando táctil con enlaces simbólicos. Solo necesita usar la opción -h al tratar con enlaces simbólicos. El resto sigue siendo el mismo que los archivos normales.

touch -h <symbolic_link>

Espero que estos ejemplos de comandos táctiles en Linux sean útiles. Si tiene alguna pregunta o sugerencia, hágamelo saber.

Este Blog lo escribimos para colaborar y servir de referencia a la comunidad Linux. Esperamos que os guste.

Leave a Reply