Se gestisci un server o lavori con un sistema Linux, il terminale è uno strumento quotidiano. Tra i comandi più usati, mv è fondamentale per spostare e rinominare file e cartelle.
Questa guida, testata su distribuzioni come Ubuntu 22.04 e Debian 11, ti spiegherà come usare mv in ogni situazione, dalla sintassi di base agli scenari più complessi.
Il Comando mv: Spostare e Rinominare
Il comando mv (abbreviazione di move) ha la duplice funzione di spostare un file o una directory da una posizione all’altra e di rinominarlo.
Sintassi di Base
La sintassi generica è:
mv [opzioni] sorgente destinazione
[opzioni]: Flag che modificano il comportamento del comando (es.-i,-v).sorgente: Il file o la cartella da spostare/rinominare.destinazione: La nuova posizione o il nuovo nome per la sorgente.
Casi d’Uso Pratici: Dalla Teoria alla Pratica
📁 Spostare un File
Per spostare un singolo file, ad esempio documento.txt dalla cartella corrente alla cartella Documenti, il comando è:
mv documento.txt Documenti/
Esperienza Pratica: È buona norma aggiungere / alla fine del percorso di destinazione (es. Documenti/). Questo indica chiaramente che Documenti è una directory, evitando che mv rinomini erroneamente il tuo file in Documenti.
📂 Spostare una Cartella
Lo stesso principio si applica alle cartelle. Per spostare l’intera cartella Progetti (con il suo contenuto) nella cartella Lavoro:
mv Progetti/ Lavoro/
↔️ Rinominare File e Cartelle
mv rinomina un file quando la destinazione si trova nella stessa directory della sorgente, ma ha un nome diverso.
Esempio di Rinominazione:
Per rinominare un file report_vecchio.odt in report_2025.odt all’interno della stessa cartella:
mv report_vecchio.odt report_2025.odt
Caso d’uso:
L’autore ha usato questo comando per rinominare e organizzare i file di backup mensili di un server web, passando da nomi generici a nomi con data specifica (backup_giugno.zip in backup_202506_web.zip).
🗺️ Spostare tra Directory Diverse
Quando devi spostare file tra percorsi lontani, usa il percorso assoluto o relativo.
- Percorso Relativo: Se sei in
/home/utente/Downloadse vuoi spostarefile_programma.debin/home/utente/Software:Bashmv file_programma.deb ../Software/Qui../indica la directory superiore. - Percorso Assoluto: Per spostare un file
documento.txtda/home/utente/lavoroa/var/www/html/da qualsiasi posizione del terminale:Bashmv /home/utente/lavoro/documento.txt /var/www/html/
💨 Spostare File Multipli con Caratteri Jolly
mv permette di spostare più file contemporaneamente, anche usando i caratteri jolly. I più comuni sono * (zero o più caratteri) e ? (un singolo carattere).
Esempi:
- Sposta tutti i file .log in log_vecchi/:mv *.log log_vecchi/
- Sposta i file con nomi simili (report_1.pdf, report_2.pdf):mv report_?.pdf destinazione/
Attenzione: I caratteri jolly non includono i file nascosti che iniziano con un punto (.). Per spostarli, devi specificarli esplicitamente (es. mv .bashrc .config/) o usare combinazioni come .*.
Opzioni Avanzate e Best Practices
🎛️ Opzioni Utili per il Comando mv
| Opzione | Descrizione |
-i | (interactive) Chiede conferma prima di sovrascrivere un file. Altamente consigliato per evitare perdite di dati! |
-f | (force) Forza la sovrascrittura di un file senza chiedere conferma. |
-n | (no-clobber) Non sovrascrivere mai un file esistente. |
-v | (verbose) Mostra i dettagli dell’operazione, stampando i file che vengono spostati. |
-u | (update) Sposta solo i file sorgente più recenti rispetto a quelli di destinazione, o se il file di destinazione non esiste. |
Esempio:
Per spostare un file chiedendo conferma e mostrando il processo:
mv -iv file.txt documenti/
⚠️ Importante: Sicurezza e Comportamento del Comando mv
Il comando mv è potente, ma può essere distruttivo. Considera sempre questi aspetti:
- Spostare tra Partizioni: Quando sposti un file tra partizioni diverse,
mvin realtà esegue una copia del file sulla nuova partizione e poi cancella l’originale. Questo processo può richiedere più tempo rispetto a un semplice spostamento sulla stessa partizione (che è solo una modifica dei metadati). - Sovrascrittura: Se il file di destinazione esiste già,
mvlo sovrascrive senza preavviso a meno che tu non usi l’opzione-i. Fai sempre un backup dei file importanti prima di spostarli o rinominarli. - Permessi: Per spostare file in directory di sistema (es.
/var/www/html/), spesso avrai bisogno dei permessi diroot. In questi casi, usasudo(es.sudo mv /home/utente/lavoro/documento.txt /var/www/html/).
Alternative per Chi Preferisce la GUI
Se non hai dimestichezza con il terminale, puoi usare l’interfaccia grafica.
- Apri il File Manager (es. Nautilus su Ubuntu, Dolphin su Kubuntu).
- Taglia il file o la cartella (tasto destro -> “Taglia” o
Ctrl+X). - Incolla nella destinazione desiderata (tasto destro -> “Incolla” o
Ctrl+V).
Questo metodo offre un’anteprima visiva delle operazioni ed è ideale per gli utenti che si avvicinano per la prima volta a Linux.
FAQ – Domande Frequenti
Posso usare mv per copiare un file invece che spostarlo?
No, mv sposta o rinomina un file, cancellando l’originale. Per copiare, usa il comando cp.
Che differenza c’è tra mv e cp?
mv sposta il file originale in una nuova posizione. cp crea una copia del file in una nuova posizione, mantenendo l’originale.
Come posso annullare un’operazione mv?
A meno che tu non abbia sovrascritto un file, non esiste un comando per annullare. L’unica soluzione è usare mv per rispostare il file nella posizione originale. Se hai sovrascritto un file, il suo contenuto è perso per sempre.










Lascia un commento
Visualizza Commenti