Cosa fa#
Aggiorna i timestamp (Access e Modify) di un file all'ora corrente. Se il file non esiste, lo crea vuoto. In pratica viene usato quasi sempre per creare file vuoti o come trigger negli script.
Sintassi#
touch [opzioni] file
Comandi essenziali#
| Comando | Flag | Significato flag | Cosa fa |
|---|---|---|---|
touch file.txt | — | — | Crea file.txt vuoto se non esiste, aggiorna timestamp se esiste |
touch -a file | -a | access | Aggiorna solo il timestamp di accesso |
touch -m file | -m | modify | Aggiorna solo il timestamp di modifica |
touch -t 202603150900 file | -t | timestamp | Imposta timestamp specifico (YYYYMMDDhhmm) |
touch -r src dst | -r | reference | Copia i timestamp da src a dst |
Creare molti file — brace expansion#
# Crea 100 directory e 26 file per ognuna (2600 file totali)
mkdir -p dir-{001..100}
touch dir-{001..100}/file-{A..Z}
# Crea file con nomi specifici
touch log_{lunedi,martedi,mercoledi}.txt
# Verifica con find
find . -name "file-A" | wc -l # 100I timestamp di Linux — MACB#
Access (atime) → ultima lettura del file
Modify (mtime) → ultima modifica del CONTENUTO
Change (ctime) → ultima modifica dei METADATI (permessi, owner, link count)
Birth (btime) → creazione (non sempre disponibile)touch aggiorna atime e mtime. Il ctime si aggiorna automaticamente ogni volta che cambia qualcosa nel file o nei metadati — non si puo' modificare con touch.
# Verificare i timestamp
stat file.txt
# Access: 2026-03-27 07:14:32
# Modify: 2026-03-25 10:00:00
# Change: 2026-03-27 07:14:32 ← si aggiorna anche quando usi touchScenario Reale — Blue Team#
Un attaccante puo' usare touch -t per far sembrare un file malevolo piu' vecchio e mimetizzarsi tra i file di sistema:
# Attaccante — falsifica il timestamp di un binario malevolo
touch -t 202001010000 /tmp/.hidden/backdoor
# Difensore — ctime non si puo' modificare con touch
stat /tmp/.hidden/backdoor
# Modify: 2020-01-01 00:00:00 ← falsificato
# Change: 2026-03-27 03:14:00 ← reale — rivela quando e' stato effettivamente creatoControlla sempre il Change time con stat, non solo il Modify — e' molto piu' difficile da falsificare.
Note personali#
touch file per creare file vuoti e' uno degli idiomi piu' usati negli script bash — per creare lock file, file di log vuoti, file sentinel per segnalare lo stato di uno script.
Collegato a#
- system — categoria
- file — categoria
- stat — legge i timestamp modificati da touch
- find — usa i timestamp per filtrare file (
-mtime,-newer) - inode-anatomy — i timestamp sono metadati nell'inode


