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