mv (abbreviazione dalla lingua inglese di move, sposta) è un comando dei sistemi operativi Unix e Unix-like, e più in generale dei sistemi POSIX, che cambia il nome di e directory o li sposta in altre directory.
Quando lo spostamento avviene entro i confini dello stesso file system, mv crea e distrugge dei collegamenti fisici, per cui non vi sono differenze tra il cambio di un nome e lo spostamento in un'altra directory, ed il tempo di esecuzione dell'operazione è indipendente dalla dimensione dei file da spostare.
In caso di spostamenti tra file system diversi, l'operazione è eseguita effettuando prima una copia dei dati nella destinazione e poi una cancellazione delle sorgenti, e quindi il tempo di esecuzione delle operazioni dipende anche dalla dimensione dei file da spostare.
Sintassi La sintassi generale di mv è la seguente: mv [opzioni] [--] sorgente1 [sorgente2 …] destinazione
I parametri sorgente indicano i file e/o le directory a cui cambiare il nome. Se viene specificato un solo parametro sorgente, il parametro destinazione indica il nome del file o della directory di destinazione.
Se vengono specificati più parametri sorgente, il parametro destinazione deve necessariamente essere una directory esistente, o al più un collegamento simbolico ad una directory.
Il doppio trattino -- (facoltativo) indica che i parametri successivi non sono da considerarsi opzioni.
Tra le opzioni principali vi sono: -i Chiede conferma prima di sovrascrivere file esistenti. -f Non chiede conferma prima di sovrascrivere file esistenti (annulla l'effetto di -i).
Esempi Rinomina il file vecchio.txt in nuovo.txt: mv vecchio.txt nuovo.txt
Sposta i file uno.txt e due.txt nella directory /tmp mv uno.txt due.txt /tmp
Note
Voci correlate cp (Unix) – Copia file e directory. ln (Unix) – Crea collegamenti simbolici e collegamenti fisici. rm (Unix) – Cancella file e/o directory.
Collegamenti esterni
Categoria:Unix Categoria:Comandi Unix Categoria:Coreutils