Creazione, eliminazione, copia e spostamento di file: mkdir
, rm
, touch
, cp
, mv
1. Creazione di directory e file
Lavorare con file e directory è la base di qualsiasi sistema operativo, incluso Linux. Dovrai creare directory per archiviare dati, spostare file in diverse posizioni, eliminare ciò che non serve (e talvolta per errore anche quello che serve, ma ci arriveremo più tardi), e copiare tutto questo tesoro secondo i tuoi desideri. Conoscere i comandi base per la gestione dei file renderà il lavoro su Linux comodo e veloce, oltre a dimostrare ai tuoi colleghi che sei un vero professionista.
In Linux puoi facilmente creare directory e file direttamente dal terminale, il che è molto comodo.
mkdir
— creazione di directory
Il comando mkdir
viene utilizzato per creare nuove directory (cartelle).
Sintassi:
mkdir [nome_cartella]
Esempio:
mkdir my_folder
Questo comando creerà la cartella my_folder
nella directory corrente.
Creazione di directory annidate
A volte è necessario creare diverse directory annidate contemporaneamente. Per farlo, utilizziamo l'opzione -p
:
mkdir -p parent_folder/child_folder/sub_child
Ora abbiamo le cartelle parent_folder
, child_folder
al suo interno e sub_child
al loro interno.
Se dimentichi l'opzione -p
, Linux ti ricorderà che la cartella genitore non esiste. Proprio come nella vita: non si può creare un bambino senza genitori!
touch
— creazione di file vuoti
Quando hai bisogno di creare rapidamente un file, usa touch
.
Sintassi:
touch [nome_file]
Esempio:
touch my_file.txt
Il file my_file.txt
apparirà istantaneamente nella directory corrente. Magia pura.
Trucco: creazione simultanea di più file
touch file1.txt file2.txt file3.txt
Complimenti, ora sei multitasking!
touch
non solo crea file, ma aggiorna anche i loro timestamp (dati sulla data di creazione e modifica del file), anche se questi file esistono già.
2. Eliminazione di file e cartelle
Prima creiamo, poi (a volte con le lacrime agli occhi) eliminiamo.
rm
— eliminazione di file
Eliminare file in Linux avviene tramite il comando rm
.
Sintassi:
rm [nome_file]
Esempio:
rm my_file.txt
Eliminazione di più file
rm file1.txt file2.txt
Niente dialoghi o avvisi. Occhio con questo comando!
rm -r
— eliminazione di cartelle
Per eliminare cartelle e il loro contenuto, usa il flag -r
(ricorsività).
Esempio:
rm -r my_folder
Casistica speciale: protezione contro azioni accidentali
Se vuoi che Linux chieda una conferma, aggiungi il flag -i
:
rm -ri my_folder
Non eseguire mai rm -rf /
(o rm -rf *
) senza comprendere le conseguenze. Questo eliminerà tutto. Linux si fida di te, ma potresti pentirtene più tardi.
3. Copia di file e cartelle
cp
— copia dei file
Copiare i file in Linux è semplice come sul desktop.
Sintassi:
cp [sorgente] [destinazione]
Esempio:
cp my_file.txt backup_file.txt
Ora hai due file: my_file.txt
e la sua copia backup_file.txt
.
Copia di più file in una cartella
Immagina di voler spostare tre file nella cartella backup
:
cp file1.txt file2.txt file3.txt backup/
Copia ricorsiva delle cartelle
Per copiare le directory, usa il flag -r
:
cp -r my_folder backup_folder
Questo creerà una copia dell'intera cartella my_folder
insieme al suo contenuto in backup_folder
.
4. Spostamento e rinominazione
mv
— spostamento di file e cartelle
Il comando mv
sposta un file o una cartella da una posizione a un'altra.
Sintassi:
mv [origine] [destinazione]
Esempio:
mv my_file.txt /home/user/documents/
Ora il file my_file.txt
si trova nella cartella /home/user/documents/
.
Rinominazione con mv
Puoi usare lo stesso comando per rinominare un file:
mv old_name.txt new_name.txt
In Linux non esiste un comando separato per la rinominazione. Spostiamo semplicemente il file con un nuovo nome nella stessa directory.
5. Esercizio pratico
Compito
- Crea la seguente struttura di cartelle:
project/ data/ logs/
- Crea i file:
README.md
inproject/
.data.csv
inproject/data/
.
- Fai il backup della cartella
project/
nella cartellabackup/
. - Rinomina il file
README.md
inREADME_backup.md
. - Elimina la cartella
logs/
.
Soluzione
# 1. Creazione delle cartelle
mkdir -p project/data
mkdir project/logs
# 2. Creazione dei file
touch project/README.md project/data/data.csv
# 3. Creazione del backup
cp -r project/ backup/
# 4. Rinomina del file
mv project/README.md project/README_backup.md
# 5. Eliminazione della cartella
rm -r project/logs
6. Analisi degli errori comuni
- Errore:
mkdir
con un nome già esistente. Se la cartella esiste già, il comando genererà un errore. Usa nomi univoci. - Errore: Eliminazione di file importanti. Se elimini accidentalmente un file importante senza backup, sarà molto difficile ripristinarlo.
- Errore con percorsi non validi. Quando specifichi un percorso, assicurati che esista. Ad esempio,
cp myfile.txt /nonexistent_path/
si concluderà con un errore.
Applicazione nella vita reale
Capire la gestione dei file su Linux può essere utile:
- Per gli sviluppatori. Per lavorare con i file del progetto, creare backup e strutturare rapidamente le directory.
- Per gli amministratori. Per creare ed eliminare file temporanei, automatizzare la gestione dei log.
- Per gli studenti. Per organizzare facilmente i file di studio.
Un semplice esempio: creare automaticamente la struttura delle cartelle per un nuovo progetto senza bisogno di utilizzare l'interfaccia grafica.
mkdir -p project/{src,docs,tests}
touch project/README.md
Ora sai come trasformare la riga di comando in una bacchetta magica per gestire i file!
GO TO FULL VERSION