GNU/Linux >> Linux Esercitazione >  >> Linux

Comando Cp in Linux (copia file)

Quando lavori su sistemi Linux e Unix, copiare file e directory è una delle attività più comuni che esegui quotidianamente.

cp è un'utilità da riga di comando per copiare file e directory su sistemi Unix e Linux.

In questo articolo spiegheremo come usare il cp comando.

Come usare cp comando #

La sintassi generale per cp il comando è il seguente:

cp [OPTIONS] SOURCE... DESTINATION

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

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

Per copiare file e directory, devi disporre almeno dei permessi di lettura sul file di origine e di quelli di scrittura sulla directory di destinazione. In caso contrario, viene visualizzato un errore di autorizzazione negata.

Copiare file con il comando cp #

Lo scenario più semplice dell'utilizzo di cp consiste nel copiare un file nella directory di lavoro corrente. Ad esempio, per copiare un file denominato file.txt a file_backup.txt , esegui il seguente comando:

cp file file_backup

oppure:

cp file{,_backup}

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

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

Nell'esempio seguente, stiamo copiando il file file.txt al /backup directory:

cp file.txt /backup

Se si desidera copiare il file con un nome diverso, è necessario specificare il nome file desiderato. Il comando seguente copierà il file nella directory specificata come new_file.txt .

cp file.txt /backup/new_file.txt

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

Per forzare cp per richiedere conferma, utilizzare -i opzione.

cp -i file.txt file_backup.txt

Se vuoi copiare il file solo se è più nuovo della destinazione, invoca il comando con -u opzione:

cp -u file.txt file_backup.txt

Quando si copia un file, il nuovo file è di proprietà dell'utente che esegue il comando. Usa il -p opzione per preservare la modalità del 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 per stampare un output dettagliato:

cp -v file.txt file_backup.txt
'file.txt' -> 'file_backup.txt'

Copiare le directory con il comando cp #

Per copiare una directory, inclusi tutti i suoi file e sottodirectory, usa il -R o -r opzione.

Nell'esempio seguente, stiamo copiando la directory Pictures a Pictures_backup :

cp -R Pictures Pictures_backup

Il comando sopra crea la directory di destinazione e copia ricorsivamente tutti i file e le sottodirectory dall'origine alla directory di destinazione.

Se la directory di destinazione esiste già, la directory di origine stessa e il suo contenuto vengono copiati all'interno della directory di destinazione.

Per copiare solo i file e le sottodirectory ma non la directory di origine, usa il -T opzione:

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 comando seguente è che non copia i file e le directory nascosti (quelli che iniziano con un punto . ):

cp -RT Pictures/* Pictures_backup/

Tutte le opzioni che abbiamo utilizzato nella sezione precedente per la copia dei file possono essere utilizzate anche durante la copia delle directory. La differenza principale è che quando copi le directory, devi sempre usare il -R opzione.

Copia più file e directory #

Per copiare più file e directory contemporaneamente, specificarne i 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 #

Copia di file e directory con il cp il comando è un compito semplice. Per ulteriori informazioni sul cp disponibile opzioni, digita man cp nel tuo terminale.

Per copiare i file in rete, usa rsync e scp utilità.

Se hai domande o feedback, sentiti libero di lasciare un commento.


Linux
  1. Copia i file nel terminale Linux

  2. Copiare file in Linux

  3. Come copiare un file in più directory in Linux

  4. Copia file e directory in Linux

  5. comando Linux cp

Comando Gunzip in Linux

Comando Stat in Linux

Comando ls in Linux per elencare i file

Come copiare file in Linux usando il comando CP

comando ls in Linux/UNIX

comando cp in Linux/UNIX