GNU/Linux >> Linux Esercitazione >  >> Linux

5 esempi di comandi touch di Linux (come modificare il timestamp dei file)

Ogni file in Linux è associato a timestamp, che specificano l'ora dell'ultimo accesso, l'ora dell'ultima modifica e l'ora dell'ultima modifica.

Ogni volta che creiamo un nuovo file o modifichiamo un file esistente o i suoi attributi, questi timestamp verranno aggiornati automaticamente.

Il comando touch viene utilizzato per modificare questi timestamp (ora di accesso, ora di modifica e ora di modifica di un file).

1. Crea un file vuoto usando il tocco

Puoi creare un file vuoto usando il comando touch. L'esempio seguente creerà un nuovo file a zero byte denominato tgs.txt.

$ touch tgs.txt

Puoi anche usare l'opzione -c per evitare di creare nuovi file. Se utilizzi l'opzione -c e se un file non esiste, il tocco non creerà il file.

$ touch -c a.txt

Comandi come ls command e find command utilizzano queste informazioni di timestamp per elencare e trovare file.

Puoi anche creare più di 1 file da un singolo comando touch. L'esempio seguente creerà 4 file denominati a, b, c e d.

$ touch a b c d

2. Modifica il tempo di accesso al file usando -a

Possiamo modificare il tempo di accesso di un file usando -a opzione. Per impostazione predefinita, prenderà l'ora di sistema corrente e aggiornerà il campo atime.

Prima dell'esecuzione del comando touch:

$ stat tgs.txt

  File: `tgs.txt'
  Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d	Inode: 394283      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/lakshmanan)   Gid: ( 1000/lakshmanan)
Access: 2012-10-18 23:58:21.663514407 +0530
Modify: 2012-10-18 23:58:21.663514407 +0530
Change: 2012-10-18 23:58:21.663514407 +0530
$ touch -a tgs.txt

Dopo il comando touch sopra (Si noti che il tempo di accesso è cambiato):

$ stat tgs.txt

  File: `tgs.txt'
  Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d	Inode: 394283      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/lakshmanan)   Gid: ( 1000/lakshmanan)
Access: 2012-10-19 00:08:23.559514525 +0530
Modify: 2012-10-18 23:58:21.663514407 +0530
Change: 2012-10-19 00:08:23.559514525 +0530

3. Cambia il tempo di modifica del file usando -m

Puoi modificare l'ora di modifica di un file usando l'opzione -m.

$ touch -m *.o

Il metodo sopra può essere utilizzato per modificare il tempo m di tutti i file obj, quando si utilizza l'utilità make.

NOTA:Non è possibile modificare il ctime utilizzando il comando touch

4. Impostazione esplicita del tempo di accesso e modifica utilizzando -t e -d

Invece di prendere il timestamp corrente, puoi specificare esplicitamente l'ora usando le opzioni -t e -d.

Il formato per specificare -t è [[CC]YY]MMDDhhmm[.SS]

$ touch -t [[CC]YY]MMDDhhmm[.SS]

Quanto segue spiega il formato precedente:

  • CC – Specifica le prime due cifre dell'anno
  • YY – Specifica le ultime due cifre dell'anno. Se il valore di YY è compreso tra 70 e 99, si assume che il valore delle cifre CC sia 19. Se il valore di YY è compreso tra 00 e 37, si presume che il valore delle cifre CC sia 20. È non è possibile fissare la data oltre il 18 gennaio 2038.
  • MM – Specifica il mese
  • DD – Specifica la data
  • hh – Specifica l'ora
  • mm – Specifica il minuto
  • SS – Specifica i secondi

Ad esempio:

$ touch -a -m -t 203801181205.09 tgs.txt

Verifica la modifica precedente utilizzando il comando stat:

$ stat tgs.txt
  File: `tgs.txt'
  Size: 3         	Blocks: 8          IO Block: 4096   regular file
Device: 801h/2049d	Inode: 394283      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/lakshmanan)   Gid: ( 1000/lakshmanan)
Access: 2038-01-18 12:05:09.000000000 +0530
Modify: 2038-01-18 12:05:09.000000000 +0530
Change: 2012-10-19 00:40:58.763514502 +0530

Puoi anche usare una stringa per cambiare l'ora

Un altro esempio:

$ touch -d "2012-10-19 12:12:12.000000000 +0530" tgs.txt

Per gli sviluppatori, il comando touch sarà davvero utile quando si lavora con i Makefile

5. Copia il timestamp da un altro file usando -r

Puoi anche prendere un file come riferimento e aggiornare l'ora per altri file, in modo che entrambi i file contengano lo stesso tempo.

Il seguente esempio di comando touch aggiornerà il timestamp del file a.txt con il timestamp del file tgs.txt.

$ touch a.txt -r tgs.txt

Linux
  1. Come utilizzare il comando touch di Linux + esempi

  2. Comando mv in Linux:7 esempi essenziali

  3. Esempi di comandi tail di Linux

  4. ln Esempi di comandi in Linux

  5. toccare Esempi di comandi in Linux

Touch Command in Linux (5 esempi)

Comando Linux WC con esempi

Comando Chmod:come modificare le autorizzazioni dei file in Linux

9 Esempi utili di Touch Command in Linux

Esempi di comandi di Linux cat

Esempi di comandi gzip di Linux