Mv (Unix)

mv (abbreviazione dalla lingua inglese di move, sposta) è un comando dei sistemi operativi Unix e Unix-like, e più in generale dei sistemi POSIX[1], che cambia il nome di file 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

  1. ^ (EN) mv, in The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition. URL consultato il 25-05-2008.

Voci correlate

Collegamenti esterni

  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica