File e Cartelle

Bentornato.
Nella lezione precedente hai imparato a muoverti nel file system.
Ora è il momento di iniziare a toccare le cose.
Con calma.
Perché il terminale può creare file come un mago, spostarli come un professionista ed eliminarli come un piccolo bulldozer digitale senza alcun legame emotivo.
Cosa Imparerai
In questa lezione imparerai a:
- creare cartelle con
mkdir; - creare file vuoti con
touch; - copiare file e cartelle con
cp; - spostare e rinominare file con
mv; - eliminare file con
rm; - eliminare cartelle vuote con
rmdir; - evitare errori pericolosi.
La Missione
La tua missione è semplice:
Creare una piccola cartella di pratica, aggiungere file, copiarli, rinominarli, spostarli ed eliminarli senza trasformare tutto in un’opera drammatica su Linux.
Creare una Cartella di Pratica
Prima torna nella tua directory home:
cd
Ora crea una cartella chiamata terminal-practice:
mkdir terminal-practice
Entraci dentro:
cd terminal-practice
Controlla dove sei:
pwd
Dovresti vedere qualcosa come:
/home/viktor/terminal-practice
Bene. Questo è il tuo parco giochi sicuro.
Se qualcosa va storto qui, almeno non stiamo distruggendo i tuoi documenti veri.
Molto professionale. Quasi responsabile.
Creare un File Vuoto
Per creare un file vuoto, usa touch.
touch notes.txt
Ora mostra il contenuto della cartella:
ls
Dovresti vedere:
notes.txt
Il file esiste.
È vuoto, ma esiste.
Un po’ come certe riunioni.
Creare Altri File
Crea qualche altro file:
touch todo.txt ideas.txt commands.txt
Ora mostrali:
ls
Dovresti vedere qualcosa come:
commands.txt ideas.txt notes.txt todo.txt
Hai creato file dal terminale.
Niente mouse. Niente file manager. Nessuna cerimonia inutile di clic.
Creare una Cartella Dentro una Cartella
Ora crea una cartella chiamata backup:
mkdir backup
Controlla:
ls
Dovresti vedere:
backup commands.txt ideas.txt notes.txt todo.txt
Le cartelle aiutano a organizzare i file.
Senza cartelle, il computer diventa un cassetto digitale pieno di cavi, vecchi scontrini e una chiavetta USB misteriosa.
Copiare un File
Per copiare un file, usa cp.
cp notes.txt backup/
Questo copia notes.txt dentro la cartella backup.
Controlla dentro backup:
ls backup
Dovresti vedere:
notes.txt
Il file originale è ancora nella cartella principale, e la copia è dentro backup.
Copiare e Rinominare allo Stesso Tempo
Puoi copiare un file e dare un nuovo nome alla copia:
cp todo.txt backup/todo-backup.txt
Controlla:
ls backup
Ora dovresti vedere:
notes.txt todo-backup.txt
Questo è utile quando vuoi conservare una vecchia versione di un file.
Perché a volte “final.txt” diventa “final-final-vero-final-v7.txt”.
Ci siamo passati tutti.
Rinominare un File
Per rinominare un file, usa mv.
mv ideas.txt project-ideas.txt
Ora mostra i file:
ls
Dovresti vedere project-ideas.txt al posto di ideas.txt.
In Linux, rinominare significa praticamente spostare un file verso un nuovo nome.
Semplice. Leggermente strano. Molto Linux.
Spostare un File
Sposta commands.txt nella cartella backup:
mv commands.txt backup/
Controlla la cartella attuale:
ls
Poi controlla la cartella backup:
ls backup
Il file si è spostato.
Non è più nel posto originale.
A differenza della copia, lo spostamento non lascia l’originale indietro.
Eliminare un File
Per eliminare un file, usa rm.
Crea un file che possiamo eliminare in sicurezza:
touch delete-me.txt
Ora eliminalo:
rm delete-me.txt
Controlla:
ls
Il file è sparito.
Importante: rm di solito non sposta i file nel cestino.
Li elimina.
Linux non dice: “Sei sicuro, tesoro?”
Linux dice: “Fatto.”
Per questo rispettiamo rm.
Eliminare una Cartella Vuota
Crea una cartella vuota:
mkdir empty-folder
Eliminala con:
rmdir empty-folder
rmdir funziona solo con cartelle vuote.
Se la cartella contiene file, Linux rifiuta.
Per una volta, Linux ti protegge da te stesso.
Goditi questo raro momento.
Eliminare una Cartella con File Dentro
Per eliminare una cartella e tutto quello che contiene, puoi usare:
rm -r folder-name
Ma fai attenzione.
rm -r significa eliminazione ricorsiva.
Elimina la cartella e il suo contenuto.
È potente.
Ed è anche il modo in cui nascono storie tristi.
Per ora usalo solo se sei nella cartella di pratica e sai esattamente cosa stai eliminando.
Errori Comuni
Dimenticare dove sei
Prima di eliminare qualcosa, esegui:
pwd
Questo mostra dove ti trovi.
Se non sei dentro la cartella di pratica, fermati e pensa.
Il terminale premia il pensiero. Punisce le dita assonnate.
Eliminare il file sbagliato
Questo elimina un file:
rm notes.txt
Questo elimina tutti i file .txt nella cartella attuale:
rm *.txt
Quella stellina * è potente.
Non usarla con leggerezza.
Non è decorazione. È una piccola granata da comando.
Spazi nei nomi
Questo può fallire:
rm my file.txt
Usa le virgolette:
rm "my file.txt"
O meglio: mentre impari, evita spazi nei nomi dei file.
Usa nomi come:
my-file.txt
my_file.txt
notes.txt
Il tuo io del futuro ti ringrazierà.
Pratica
Dentro terminal-practice, prova questo:
mkdir lesson3
cd lesson3
touch file1.txt file2.txt file3.txt
ls
mkdir backup
cp file1.txt backup/
mv file2.txt renamed-file2.txt
mv file3.txt backup/
ls
ls backup
Poi rispondi:
- Quale comando crea una cartella?
- Quale comando crea un file vuoto?
- Quale comando copia un file?
- Quale comando sposta o rinomina un file?
- Quale comando elimina un file?
Mini Sfida
Crea questa struttura usando solo il terminale:
terminal-practice/
└── project/
├── notes.txt
├── todo.txt
└── backup/
└── notes-backup.txt
Passi:
- Crea una cartella chiamata
project. - Entraci dentro.
- Crea
notes.txtetodo.txt. - Crea una cartella chiamata
backup. - Copia
notes.txtdentrobackupcomenotes-backup.txt. - Mostra tutto e controlla il risultato.
Niente mouse.
Il mouse è ancora in vacanza dalla lezione 2.
Riassunto
Oggi hai imparato che:
mkdircrea cartelle;touchcrea file vuoti;cpcopia file;mvsposta o rinomina file;rmelimina file;rmdirelimina cartelle vuote;rm -relimina cartelle con contenuto, ma va usato con attenzione.
Ora sai creare e organizzare file dal terminale.
È qui che il terminale inizia a sembrare meno una finestra nera spaventosa e più uno strumento.
Uno strumento affilato.
Non agitarlo in giro.
Prossima Lezione
Nella prossima lezione impareremo a leggere file e cercare al loro interno usando comandi come cat, less, head, tail e grep.
Perché creare file è bello.
Ma leggerli è dove inizia il lavoro da detective.