Come usare il comando Touch in Linux
Vuoi creare un file velocemente, ma non vuoi aprire un editor di testo o navigare attraverso un’interfaccia grafica? Non cercare oltre il touch
comando. Questo comando è utile per creare file vuoti e aggiornare i timestamp dei file, il che è fondamentale per gestire i backup ed eseguire gli script in modo efficace.
Questa guida esplorerà come utilizzare il comando touch in Linux per creare uno o più file vuoti o per modificare i timestamp in base alle esigenze di scripting.
Come funziona il comando Touch
Nei sistemi UNIX/Linux, il touch
comando è spesso utilizzato per creare rapidamente file vuoti. Inoltre, è possibile utilizzarlo per modificare i timestamp, in particolare gli orari di accesso e modifica dei file già esistenti.
Se il file non esiste, touch lo genererà, anche se senza alcun contenuto. Inoltre, la sua capacità di modificare i timestamp lo rende inestimabile nello scripting e nella gestione dei file system.
La sintassi del comando touch è la seguente:
Crea un file vuoto
Creare un file vuoto con il comando touch è molto semplice. Basta usare il touch
comando senza flag/opzioni:
Per verificare la creazione del file, puoi controllarne la dimensione utilizzando il stat
comando:
Nell’output, cerca il campo Size . Se mostra 0, il file è vuoto.
Inoltre, se il file esiste già, il comando touch aggiorna gli orari di accesso (atime) e di modifica (mtime) all’ora corrente, senza influire sul contenuto o sui permessi del file.
Crea più file vuoti
E se ti serve più di un file vuoto? Con Touch, puoi creare più file contemporaneamente. Ad esempio, creiamo più file separati da spazi, come questo:
È possibile verificare la creazione di questi file vuoti multipli eseguendo questo comando:
È anche possibile creare una serie di file con nomi composti da lettere o numeri utilizzando le parentesi graffe.
Creiamo più file con nomi numerati:
Per confermarlo, visualizza i file nella directory specificata.
Allo stesso modo, puoi anche creare file con nomi composti da lettere:
Opzioni del comando touch
Come detto in precedenza, quel comando touch non riguarda solo la creazione di file, ma anche uno strumento per gestire i timestamp dei file. Per manipolare questi timestamp, devi sapere come funzionano le opzioni del comando touch. Diamo un’occhiata:
Opzione | Descrizione |
---|---|
-UN | Aggiorna solo l’orario di accesso al file. |
-C | Impedisce la creazione di un nuovo file se non esiste già. |
-d=, –data= | Modifica la marca temporale di un file utilizzando una stringa di data specificata. |
-M | Aggiorna solo l’ora di modifica del file. |
-R | Utilizza atime e mtime da un file di riferimento. |
-T | Modifica la marca temporale di un file utilizzando una data e un’ora specificate. |
Modifica dell’ora di accesso al file
Il tempo di accesso, o atime, è il timestamp che si aggiorna ogni volta che si accede al contenuto di un file utilizzando strumenti da riga di comando come grep o cat, oppure editor di testo come vim o nano.
Di default, touch aggiorna sia gli orari di accesso che di modifica. Tuttavia, se vuoi modificare solo l’orario di accesso, puoi usare l’ -a
opzione con il touch
comando. Ciò è particolarmente utile per simulare l’utilizzo dei file o per regolare i log per determinate operazioni.
Ora puoi modificare l’ora di accesso di un file specificato utilizzando touch -a
il comando:
Inoltre, il comando sopra riportato aggiornerà l’ora di accesso del file specificato all’ora corrente senza influenzare l’mtime.
Verifichiamo la modifica eseguendo:
Inoltre, puoi anche impostare un orario di accesso specifico combinando le opzioni -a
e -t
. Ad esempio, per modificare l’orario di accesso al file specificato a mezzanotte del 1° giugno 2010:
Qui, l’ -a
opzione modifica l’ora di accesso e -t
specifica l’ora nel formato [[CC]YY]MMDDhhmm[.ss] .
Ancora una volta, per verificare le modifiche, puoi usare questo comando:
Modifica del tempo di modifica
L’ora di modifica, o time, è il timestamp che cambia ogni volta che il contenuto di un file viene modificato. Tuttavia, non tiene traccia delle modifiche relative ai permessi o alla proprietà del file.
Per aggiornare solo l’ora dell’ultima modifica di un file senza alterare l’ora di accesso, è possibile utilizzare l’ -m
opzione del comando touch:
Per verificare le modifiche, utilizzare il stat
comando:
In questo modo mtime viene modificato nel momento presente, lasciando invariato il tempo di accesso (atime).
Se hai bisogno di impostare un timestamp specifico per l’ora di modifica, devi combinare le -m
opzioni con l’ -t
opzione. Ad esempio, per impostare l’ora di modifica alle 08:45 del 19 giugno 2014, esegui:
Successivamente, verifica l’ora di modifica aggiornata eseguendo:
Modifica Orario di modifica e accesso
Ci sono casi in cui potresti aver bisogno di aggiornare sia atime che mtime contemporaneamente. Per farlo, usa il comando touch indipendentemente da qualsiasi opzione.
L’esecuzione di questo comando modifica sia atime che mtime all’ora corrente. Utilizzalo quando vuoi aggiornare i timestamp di un file per riflettere interazioni o modifiche recenti senza modificare il contenuto del file.
Inoltre, è possibile utilizzare l’ opzione -a
and -m
insieme al touch
comando per modificare sia l’orario di accesso che quello di modifica:
Puoi verificare gli orari aggiornati eseguendo questo:
Creazione di file utilizzando il tempo specificato
A volte, potresti voler impostare il timestamp di un file su un orario e una data specifici anziché sul momento corrente. L’ -t
opzione seguita dal timestamp desiderato nel formato [[CC]YY]MMDDhhmm[.ss] , ti consente di fare proprio questo.
Ad esempio, se si desidera impostare gli orari di accesso e modifica di un determinato file al 1° gennaio 2024 alle 12:30, è necessario immettere:
Per confermare la modifica, eseguire:
Puoi anche usare l’ -r
opzione per aggiornare il timestamp di un file per farlo corrispondere a quello di un altro file. Ad esempio, cambiamo il happy.txt
timestamp del file in base al new_file.txt
timestamp.
Ma prima di apportare modifiche, diamo un’occhiata all’ora di modifica dei file specificati:
Dopodiché, modifica la marca temporale di un file in modo che corrisponda alla marca temporale di un altro file:
Verificare la modifica con:
Alternativa al comando Touch
Sebbene il touch sia il mio strumento preferito per la creazione rapida di file e la manipolazione di timestamp, ci sono altri metodi che puoi usare. Esploriamo alcune di queste alternative.
Comando del gatto
Spesso si usa il comando cat per visualizzare il contenuto dei file, ma può anche creare file. Utilizzando cat con un operatore di reindirizzamento, è possibile generare un file vuoto:
Questo comando crea filename.txt
e ti inserisce in modalità input. Se premi Ctrl+ D, termina l’input e lascia il file vuoto.
Operatore di reindirizzamento
Gli operatori di reindirizzamento (>, >>) sono un altro metodo per creare file. Utilizzando l’ >
operatore, puoi creare un file vuoto o sovrascriverne uno esistente:
È possibile utilizzare anche l’ >>
operatore , ma in questo caso il contenuto viene aggiunto a un file esistente anziché crearne uno nuovo o lasciarlo vuoto.
Editor di testo
Esistono molti editor di testo a riga di comando, come nano, vim o emacs, che consentono di creare e modificare file. Inoltre, è possibile utilizzare questi editor di testo per creare un file vuoto.
Ad esempio, per creare un file vuoto con Vim, esegui:
Quando apri Vim, sarai in modalità comando per impostazione predefinita. Premi iper passare alla modalità inserimento, dove puoi digitare o modificare il contenuto.
Dopo essere entrati in modalità inserimento, premete Esc per tornare alla modalità comando. Quindi, digitate :wq
e premete Invio per salvare il vostro lavoro e uscire da Vim. Ed ecco fatto: avete creato un file vuoto usando Vim!
Conclusione
Linux offre diversi modi per gestire i file, ma touch utility si distingue per la sua semplicità ed efficacia. Puoi anche imparare come eseguire altre operazioni su Linux come concatenare file, trovare file o rimuovere file e altro.
Credito immagine: Unsplash . Tutte le modifiche e gli screenshot sono di Haroon Javed.
Lascia un commento