Copiare eo spostare file e directory cp e mv

Proseguiamo in questa lezione il nostro viaggio nel file system analizzando altri due utili comandi della shell di Linux, ovvero cp (copy) e mv (move) che ci serviranno rispettivamente per copiare e cancellare file e/o directory.

Copiare un file

Per copiare un file useremo il comando cp, ecco la sintassi:
cp file_da_copiare directory_di_destinazione
Poniamo, ad esempio, di voler creare una copia del file “foto-1.jpg” (che si trova nella directory corrente) nella directory fotografie del nostro sito. Questo il comando da digitare:

cp foto-1.jpg /home/miosito/fotografie
Qualora invece volessimo copiare un intera directory useremo, come per il comando rm, l’opzione ricorsiva che è supportata, appunto, anche dal comando cp.
Poniamo, ad esempio, di voler copiare l’intera directory “foto_vacanzae_2004” all’interno della solita cartella fotografie del nostro sito:

cp -r foto_vacanze_2004 /home/miosito/fotografie
Una volta eseguito questo comando vi invito ad effettuare una verifica: spostatevi nella directory di destinazione (usando cd) e visualizzatene il contenuto (usando ls)… se tutto ha funzionato correttamente dovreste trovare la vostra directory “foto_vacanze_2004”.

Spostare un file

Qualora non fossimo interessati a copiare, ma semplicemente a spostare un file useremo il comando mv seguito dal nome del file da spostare e, a seguire, dalla directory di destinazione. Ecco la sintassi:

mv file_da_spostare directory_di_destinazione
Riprendiamo l’esempio visto sopra e poniamo di voler spostare (e non copiare) il file “foto-1.jpg” all’interno della solita directory fotografie:

mv foto-1.jpg /home/miosito/fotografie

Rinominare un file con mv

In questa sede credo sia opportuno ricordare che il comando mv ha anche una seconda funzione: quella di rinominare un file. Ecco la sintassi:

mv vecchio_nome nuovo_nome
Se, ad esempio, volessimo rinominare il file “foto-1.jpg” in “foto_amici_spiaggia.jpg” useremo:

mv foto-1.jpg foto_amici_spiaggia.jpg

Attenzione: il comando mv funziona anche per spostare e/o rinominare intere directory. La sintassi è la medesima vista sopra per i file.