Spostare file e directory è una delle attività più basilari che spesso è necessario eseguire su un sistema Linux.

In questo tutorial, spiegheremo come utilizzare il comando mv per spostare file e directory.

Come usare il comando mv #

Il comandomv (breve da move) viene utilizzato per rinominare e spostare file e directory da una posizione all’altra., La sintassi per il mv comando è la seguente:

mv SOURCE DESTINATION

SOURCE può essere uno o più file o directory, e DESTINATION può essere un singolo file o di una directory.

  • Quando più file o directory vengono forniti come SOURCE, DESTINATION deve essere una directory. In questo caso, i file SOURCE vengono spostati nella directory di destinazione.,
  • Se si specifica un singolo file come SOURCEe la destinazione DESTINATION è una directory esistente, il file viene spostato nella directory specificata.
  • Se si specifica un singolo file come SOURCEe un singolo file come DESTINATION target, si sta rinominando il file .
  • Quando SOURCE è una directory e DESTINATION non esiste, SOURCE verrà rinominato DESTINATION., Altrimenti, se esisteDESTINATION, viene spostato all’interno della directoryDESTINATION.

Per spostare un file o una directory, è necessario disporre dei permessi di scrittura sia su SOURCEche su DESTINATION. In caso contrario, si riceverà un permesso negato errore.,

Per esempio, per spostare il file file1 la directory di lavoro corrente /tmp directory eseguire:

mv file1 /tmp

Per rinominare un file, è necessario specificare il nome del file di destinazione:

mv file1 file2

La sintassi per spostare la directory è la stessa di quando lo spostamento di file. Nell’esempio seguente, se esiste la directory dir2, il comando sposterà dir1 all’interno di dir2., Se dir2 non esiste, dir1 verrà rinominato dir2:

mv dir1 dir2

di Spostare Più File e Directory #

Per spostare più file e directory, specificare il file che si desidera spostare l’origine. Ad esempio, per spostare i filefile1 efile2 nella directorydir1 digitare:

mv file1 file2 dir1

Ilmv comando consente inoltre di utilizzare pattern matching., Per esempio, per spostare tutti pdf file dalla directory corrente per il ~/Documents directory, utilizzare:

mv *.pdf ~/Documents

mv Opzioni di Comando #

mv comando accetta diverse opzioni che influenzano il comando predefinito comportamento.

In alcune distribuzioni Linux, mv può essere un alias del comando mv con un set personalizzato di opzioni. Ad esempio, in CentOS mv è un alias di mv -i., Puoi trovare se mv è un alias con il type comando:

type mv 

Se mv alias l’output sarà simile a questa:

mv is aliased to `mv -i'

Se il conflitto opzioni sono dato, quest’ultimo ha la precedenza.

Prompt prima di sovrascrivere #

Per impostazione predefinita, se il file di destinazione esiste, verrà sovrascritto., To prompt for confirmation, use the -i option:

mv -i file1 /tmp
mv: overwrite '/tmp/file1'?

To overwrite the file type y or Y.,

Forzare la sovrascrittura #

Se si tenta di sovrascrivere un file di sola lettura, il mv comando verrà chiesto se si desidera sovrascrivere il file:

mv -i file1 /tmp
mv: replace '/tmp/file1', overriding mode 0400 (r--------)? 

Per evitare di essere richiesto di utilizzare il -f opzioni:

mv -f file1 /tmp

Questa opzione è particolarmente utile quando è necessario sovrascrivere più file di sola lettura.,

non sovrascrivere file esistenti #

-n opzione dice mv mai sovrascrivere un file esistente:

mv -f file1 /tmp

Se un file1 esiste il comando di cui sopra, non fa nulla. Altrimenti sposterà il file nella directory/tmp.,

il backup di file #

Se il file di destinazione esiste, è possibile creare una copia di backup utilizzando il tag -b opzioni:

mv -b file1 /tmp

Il file di backup avrà lo stesso nome del file originale con una tilde (~) aggiunto ad esso.

Utilizzare il comando ls per verificare che il backup sia stato creato:

ls /tmp/file1*
/tmp/file1 /tmp/file1~

Verbose output #

Un’altra opzione che può essere utile è-v., Quando viene utilizzata questa opzione, il comando per stampare il nome di ogni file spostato:

mv -i file1 /tmp
renamed 'file1' -> '/tmp/file1'

Conclusione #

mv comando viene utilizzato per spostare e rinominare file e directory.

Per ulteriori informazioni sul comando mv, controllare la pagina man o digitare man mv nel terminale.

I nuovi utenti Linux che sono intimiditi dalla riga di comando possono utilizzare il file manager GUI per spostare i loro file.