Web Hosting Logo
Login
Novità:
Il tuo hosting professionale da 25 anni ha una nuova gestione! WebHosting.it è adesso parte di SupportHost

Linux: comando cp

Il comando "cp" in ambiente Linux viene utilizzato per copiare file o cartelle da una posizione all'altra, sia all'interno di una stessa directory che tra directory diverse.

Con le funzionalità di cp quindi possiamo quindi avvalerci della possibilità di creare backup dei file, creare copie di un file in più posizioni. Inoltre la copia di file tramite comando cp permette di accedere anche ad altre opzioni avanzate, come la copia di file con permessi di proprietà e la sovrascrittura di file esistenti.

Questo tipo di comando linux può risultare utile in molte occasioni, anche quando sei chiamato alla gestione di un server dedicato.

La sintassi e le opzioni

La sintassi del comando "cp" in Linux è:

cp [options] source destination

Prova gratis e senza impegno uno dei nostri piani hosting per 14 giorni. Non è richiesto nessun dato di pagamento!

Prova gratis
  • source (origine) è il percorso del file o della cartella che si desidera copiare.
  • destinazione è il percorso in cui si desidera copiare il file o la cartella.

Le opzioni invece rappresentano diverse funzionalità del comando cp

-r per copiare una directory e i suoi sottodirectory

-p per mantenere i permessi, le proprietà e la data di modifica del file originale

-u per copiare solo i file che sono più recenti e

-v per visualizzare i dettagli della copia

-a per copiare in modalità archivio

-l per creare un link invece che una copia

-n per non sovrascrivere i file esistenti

Esempio sintassi delle opzioni

  • usando l’opzione -r si copia non solo la cartella ed i file contenuti in essa ma anche le sottocartelle ed il loro contenuto

cp -r /path/to/original/directory /path/to/destination 

  • usando l’opzione -p si copiano il file "original/file" nella cartella "destination" mantenendo i permessi, le proprietà e la data di modifica del file originale. Questa opzione può essere usata in combinazione con -r per mantenere i permessi su tutti i file nelle sottocartelle

cp -p /path/to/original/file /path/to/destination

  • usando l’opzione -u si evita di sovrascrivere file per errore, infatti questa opzione fa in modo che un file già esistente nella cartella di destinazione in una versione più recente, non venga copiato. Un comando molto utile se si lavora con molti file che vengono modificati spesso.

cp -u /path/to/original/file /path/to/destination

  • usando l’opzione -v verranno visualizzati i nomi dei file mentre vengono copiati. Questo si rivela molto utile quando si copiano molti file o grandi quantità di dati, perché consente di vedere quali file sono stati copiati e quali no

cp -v /path/to/original/file /path/to/destination

  • usando l’opzione -a si indica che i file devono essere copiati in modalità "archivio". Cioè con i loro attributi, come i permessi, la data di modifica e l'appartenenza al gruppo, mantenuti intatti.

cp -a /path/to/original/file /path/to/destination

  • usando l’opzione -l i file possonoessere copiati in modalità "link simbolico". Il collegamento simbolico è un file speciale che punta al file originale, in modo che qualsiasi operazione eseguita sul collegamento venga effettuata sul file originale.

cp -l /path/to/originalfile /path/to/newlink

  • usando l’opzione -n si indica di non sovrascrivere i file esistenti. In altre parole, se si utilizza l'opzione "-n" con il comando "cp" e si tenta di copiare un file in una posizione dove un file con lo stesso nome esiste già, il comando "cp" non effettuerà la copia e genererà un messaggio di errore.

cp -n /path/to/originalfile /path/to/existingfile

Per conoscere tutte le opzioni disponibili per il comando "cp" in un sistema operativo basato su Unix/Linux, è possibile utilizzare il comando "man cp" o "cp --help" in una shell.

Prova gratis e senza impegno uno dei nostri piani hosting per 14 giorni. Non è richiesto nessun dato di pagamento!

Prova gratis

Problemi con il comando cp

Conoscere bene le opzioni ed il loro utilizzo è indispensabile in molti casi per evitare di incorrere in alcuni problemi che potrebbero verificarsi, ad esempio:

  • Permessi negati: se si cerca di copiare un file o una directory che non si ha il permesso di leggere, il comando cp mostrerà un messaggio di errore "Permesso negato".
  • Sovrascrittura: Se si utilizza il comando cp per copiare un file su un altro file con lo stesso nome, esso verrà sovrascritto senza chiedere conferma, se non si utilizza l'opzione -i o -n
  • Errore di path: se si inserisce un percorso non valido per la cartella di origine o di destinazione, il comando cp mostrerà un messaggio di errore "No such file or directory"
  • Copia di file grandi: se si cerca di copiare un file molto grande, il comando cp potrebbe richiedere molto tempo per completare l'operazione e potrebbe anche causare problemi di memoria.
  • Copia di file di sistema: se si cerca di copiare file di sistema importanti, come file di configurazione o eseguibili, si può causare problemi al sistema operativo e causare malfunzionamenti.

Per evitare questi problemi, ad esempio quando fornisci un servizio di server dedicati gestiti, si consiglia di utilizzare sempre le opzioni appropriate e di essere molto attenti quando si utilizza il comando cp per copiare file di sistema o file importanti.

Ivan Messina
ivan
Con oltre 10 anni di esperienza nel web hosting, lavora ogni giorno per migliorare il servizio e riservare attenzione a ogni singolo cliente.
Web Hosting Footer Image