Lo spostamento di file e directory è una delle attività più basilari che spesso devi eseguire su un sistema Linux.
In questo tutorial spiegheremo come usare il mv comando per spostare file e directory.
Come utilizzare il mv Comando #
Il mv comando (abbreviazione di sposta) viene utilizzato per rinominare e spostare file e directory da una posizione all'altra. La sintassi per mv il comando è il seguente:
mv [OPTIONS] SOURCE DESTINATION
La SOURCE può essere uno o più file o directory e DESTINATION può essere un singolo file o directory.
- Quando vengono forniti più file o directory come
SOURCE, ilDESTINATIONdeve essere una directory. In questo caso, ilSOURCEi file vengono spostati nella directory di destinazione. - Se specifichi un singolo file come
SOURCEe ilDESTINATIONtarget è una directory esistente, quindi il file viene spostato nella directory specificata. - Se specifichi un singolo file come
SOURCEe un singolo file comeDESTINATIONtarget quindi stai rinominando il file. - Quando il
SOURCEè una directory eDESTINATIONnon esiste,SOURCEverrà rinominato inDESTINATION. Altrimenti seDESTINATIONesiste, deve essere spostato all'interno dellaDESTINATIONdirectory.
Per spostare un file o una directory, devi disporre dei permessi di scrittura su entrambi SOURCE e DESTINATION . In caso contrario, riceverai un errore di autorizzazione negata.
Ad esempio, per spostare il file file1 dalla directory di lavoro corrente al /tmp directory che eseguiresti:
mv file1 /tmp Per rinominare un file è necessario specificare il nome del file di destinazione:
mv file1 file2
La sintassi per spostare le directory è la stessa di quando si spostano i file. Nell'esempio seguente, se dir2 esiste, il comando sposterà dir1 dentro dir2 . Se dir2 non esiste, dir1 verrà rinominato in dir2 :
mv dir1 dir2 Spostamento di più file e directory #
Per spostare più file e directory, specifica i file che desideri spostare come origine. Ad esempio, per spostare i file file1 e file2 alla dir1 directory da digitare:
mv file1 file2 dir1
Il mv Il comando consente anche di utilizzare la corrispondenza dei modelli. Ad esempio, per spostare tutti i pdf file dalla directory corrente a ~/Documents directory, useresti:
mv *.pdf ~/Documents mv Opzioni di comando #
Il mv comando accetta diverse opzioni che influiscono sul comportamento predefinito del comando.
In alcune distribuzioni Linux, mv potrebbe essere un aliasto di mv comando con un set personalizzato di opzioni. Ad esempio, in CentOS mv è un alias per mv -i . Puoi scoprire se mv è un alias che usa il type comando:
type mv
Se mv è alias l'output sarà simile a questo:
mv is aliased to `mv -i'
Se vengono fornite opzioni in conflitto, l'ultima ha la precedenza.
Avvisa prima di sovrascrivere #
Per impostazione predefinita, se il file di destinazione esiste, verrà sovrascritto. Per richiedere conferma, usa -i opzione:
mv -i file1 /tmp mv: overwrite '/tmp/file1'?
Per sovrascrivere il file digita y o Y .
Forza sovrascrittura #
Se provi a sovrascrivere un file di sola lettura, mv comando ti chiederà se vuoi sovrascrivere il file:
mv -i file1 /tmp mv: replace '/tmp/file1', overriding mode 0400 (r--------)?
Per evitare che ti venga richiesto, usa -f opzioni:
mv -f file1 /tmp Questa opzione è particolarmente utile quando devi sovrascrivere più file di sola lettura.
Non sovrascrivere i file esistenti #
Il -n l'opzione dice a mv non sovrascrivere mai alcun file esistente:
mv -n file1 /tmp
Se un file1 esiste il comando sopra non farà nulla. Altrimenti sposterà il file in /tmp directory.
Backup dei file #
Se il file di destinazione esiste, puoi crearne un backup usando il -b opzione:
mv -b file1 /tmp
Il file di backup avrà lo stesso nome del file originale con una tilde (~ ) in allegato.
Utilizzare il comando ls per verificare che il backup sia stato creato:
ls /tmp/file1* /tmp/file1 /tmp/file1~
Uscita dettagliata #
Un'altra opzione che può essere utile è -v . Quando viene utilizzata questa opzione, il comando stampa il nome di ogni file spostato:
mv -i file1 /tmp renamed 'file1' -> '/tmp/file1'
Conclusione #
Il mv comando viene utilizzato per spostare e rinominare file e directory.
Per ulteriori informazioni su mv comando, controlla la pagina man o digita man mv nel tuo terminale.
I nuovi utenti Linux che sono intimiditi dalla riga di comando possono utilizzare il file manager della GUI per spostare i propri file.
Se hai domande o feedback, sentiti libero di lasciare un commento.