androide

Comando cp in linux (copia file)

Comandos Básicos Linux 07 - cp (copiar arquivos) e rm (remover arquivos)

Comandos Básicos Linux 07 - cp (copiar arquivos) e rm (remover arquivos)

Sommario:

Anonim

Quando lavori su sistemi Linux e Unix, la copia di file e directory è una delle attività più comuni che eseguirai quotidianamente.

cp è un'utilità da riga di comando per la copia di file e directory su sistemi Unix e Linux., spiegheremo come usare il comando cp .

Come usare il comando cp

La sintassi generale per il comando cp è la seguente:

cp SOURCE… DESTINATION

SOURCE può contenere uno o più file o directory come argomenti e l'argomento DESTINATION può essere un singolo file o directory.

  • Quando gli argomenti SOURCE e DESTINATION sono entrambi file, il comando cp copia il primo file nel secondo. Se il file non esiste, il comando lo crea. Quando SOURCE ha più file o directory come argomenti, l'argomento DESTINATION deve essere una directory. In questa situazione, i file e le directory SOURCE vengono spostati nella directory DESTINATION DESTINATION argomenti SOURCE e DESTINATION sono entrambi directory, il comando cp copia la prima directory nella seconda.

Per copiare file e directory, è necessario disporre almeno delle autorizzazioni di lettura sul file di origine e delle autorizzazioni di scrittura sulla directory di destinazione. In caso contrario, viene visualizzato un errore di autorizzazione negata.

Copia dei file con il comando cp

Lo scenario più semplice dell'uso di cp è copiare un file nella directory di lavoro corrente. Ad esempio, per copiare un file denominato file.txt in file_backup.txt è necessario eseguire il comando seguente:

cp file file_backup

o

cp file{, _backup}

Per copiare un file in un'altra directory, specificare il percorso assoluto o relativo alla directory di destinazione.

Quando viene specificato solo il nome della directory come destinazione, il file copiato ha lo stesso nome del file originale.

Nel seguente esempio stiamo copiando il file file.txt nella directory /backup :

cp file.txt /backup

cp file.txt /backup/new_file.txt

Per impostazione predefinita, se il file di destinazione esiste, viene sovrascritto. L'opzione -n dice a cp non sovrascrivere un file esistente.

Per forzare cp a richiedere conferma, utilizzare l'opzione -i .

cp -i file.txt file_backup.txt

cp -u file.txt file_backup.txt

Quando si copia un file, il nuovo file è di proprietà dell'utente che esegue il comando. Utilizzare l'opzione -p per conservare la modalità file, la proprietà e i timestamp:

cp -p file.txt file_backup.txt

Un'altra opzione che può essere utile è -v , che dice a cp di stampare un output dettagliato:

cp -v file.txt file_backup.txt

'file.txt' -> 'file_backup.txt'

Copia delle directory con il comando cp

Per copiare una directory, inclusi tutti i suoi file e le sue sottodirectory, usa l'opzione -R o -r .

Nel seguente esempio stiamo copiando la directory Pictures in Pictures_backup :

cp -R Pictures Pictures_backup

Il comando sopra crea la directory di destinazione e copia ricorsivamente tutti i file e le sottodirectory dalla sorgente alla directory di destinazione.

Se la directory di destinazione esiste già, la directory di origine stessa e tutto il suo contenuto vengono copiati all'interno della directory di destinazione. Per copiare solo i file e le sottodirectory ma non la directory di destinazione, utilizzare l'opzione -T :

cp -RT Pictures Pictures_backup

Un altro modo per copiare solo il contenuto della directory ma non la directory stessa è utilizzare il carattere jolly ( * ). Lo svantaggio del seguente comando è che non copia i file e le directory nascosti (quelli che iniziano con un punto):

cp -RT Pictures/* Pictures_backup/

Tutte le opzioni utilizzate nella sezione precedente durante la copia dei file possono essere utilizzate anche durante la copia di directory. La differenza principale è che quando si copiano le directory. devi sempre usare l'opzione -R .

Copia più file e directory

Per copiare più file e directory contemporaneamente, specificare i loro nomi e utilizzare la directory di destinazione come ultimo argomento:

cp file.txt dir file1.txt dir1

Quando si copiano più file, la destinazione deve essere una directory.

Conclusione

Copiare file e directory con il comando cp è un compito semplice. Per informazioni su tutte le opzioni cp disponibili, digita man cp nel tuo terminale.

Per copiare i file sulla rete, utilizzare le utility rsync e scp .

terminale cp