GNU/Linux >> Linux Esercitazione >  >> Linux

File di copia Linux - CP Linux semplificato!

In questo articolo imparerai tutto ciò che devi sapere sul file di copia di Linux o, in breve, sul comando CP di Linux. La copia di file in Linux è un'abilità essenziale e ti mostreremo come utilizzare questo comando passo dopo passo.

Come faccio a copiare i file in Linux?

Esistono diversi modi per copiare file in Linux. Il metodo più comune consiste nell'usare cp comando. Questo comando sta per "copia" e ti consente di copiare file da una posizione all'altra . Ad esempio, se desideri copiare un file chiamato "example.txt" dalla tua directory corrente in una nuova directory chiamato "temp" , dovresti usare il seguente comando:

cp example.txt temp/Code language: Bash (bash)

Questo creerebbe un nuovo file chiamato "example.txt" nella "temp" directory identica al file originale.

Un altro modo per copiare file in Linux è usare mv comando. Questo comando sta per "sposta" e ti consente di spostare i file da una posizione all'altra. Tuttavia, a differenza del cp comando, il mv il comando cancellerà il file originale dopo che è stato copiato nella nuova posizione . Se vuoi spostare un file chiamato "example.txt" dalla directory corrente a una nuova directory denominata "temp" dovresti usare il seguente comando:

mv example.txt temp/Code language: Bash (bash)

Questo creerebbe un nuovo file chiamato "example.txt" nella "temp" directory ed elimina il file originale .

Infine, puoi anche usare l'interfaccia GUI per copiare file in Linux . La maggior parte delle distribuzioni viene fornita con un'applicazione di gestione dei file che fornisce un modo grafico per copiare, spostare ed eliminare i file. Per utilizzare questo metodo, è sufficiente aprire l'applicazione di gestione dei file e vai alla posizione del file che desideri copiare . Quindi, fai clic sul file e seleziona "Copia" dal menu . Successivamente, vai alla posizione in cui desideri copiare il file e fai clic su "Incolla". Il file verrà copiato nella nuova posizione.

Introduzione al comando Linux Copy File Command (cp)

Dall'inizio, eseguirò il suo comando di aiuto per renderti più consapevole:

cp – helpCode language: Bash (bash)

In Linux, il cp comando è una scorciatoia per copia . Questo comando viene utilizzato per copiare file o un gruppo di file o directory da una posizione di origine a una posizione di destinazione.

Genera il contenuto esatto dei file copiati su un disco con un nome file diverso predefinito. Il comando Linux copy file (cp) necessita di almeno due nomi di file nei suoi argomenti per funzionare. Esistono molti tipi di utilizzo dei comandi di copia, ma ti mostrerò i comandi più importanti e pratici della vita quotidiana che ti aiuteranno nel flusso di lavoro.

La sintassi di base per copiare qualsiasi file da un indirizzo di origine all'indirizzo è:

cp <source address> <destination address>Code language: Bash (bash)

Ora, modificando ulteriormente gli argomenti della sintassi di base, eseguirò diverse operazioni di copia dei file di Linux, di cui vedrai maggiori dettagli in questo articolo.

Copia un file nella stessa directory

Il comando cp aiuta l'utente a copiare il contenuto di un file sorgente nella sua destinazione, quindi qui replicherò il contenuto di un file sorgente ceos3c.txt nel nuovo file di destinazione ceos3c_new.txt . Se il file di destinazione esiste già, questo comando sovrascriverà quel file senza alcun messaggio di avviso , e se il file di destinazione non è esistente, verrà creato un nuovo file, che copierà il contenuto del file di origine secondo il desiderio dell'utente:

cp ceos3c.txt ceos3c_new.txtCode language: CSS (css)

Copia un singolo file in una directory

Utilizzando questo comando di copia, puoi copiare un file sorgente ceos3c.txt nella directory di destinazione nuova cartella quando necessario. Se la directory non esiste, prima creerà una nuova directory e vi copierà il sorgente, ma se la directory esiste già, allora il cp comando sovrascriverà il contenuto preesistente nella directory destinata.

cp ceos3c.txt newfolder/

Copia più file in una directory

Con l'aiuto di questo comando di copia file di Linux, puoi copiare più file in una directory quando necessario. Supponiamo i vari file sorgente ceos3c1.txt , ceos3c2.txt , ceos3c3.txt devono essere copiati tutti in una volta in una directory specifica newfolder quindi puoi inquadrare il comando sopra come mostrato.

Usando il cp il comando copierà l'intero contenuto dal file di origine alla directory destinata menzionata. Se la directory non esiste, prima creerà una nuova directory e vi copierà il contenuto, ma se la directory esiste già, cp sovrascriverà tutti i file preesistenti nella directory di destinazione, quindi fai attenzione mentre copi il contenuto dall'origine alla destinazione.

cp ceos3c1.txt ceos3c2.txt ceos3c3.txt newfolder/Code language: Bash (bash)

Copia la directory di origine nella directory di destinazione

Questo comando di copia del file di Linux utilizza le sue prestazioni ricorsive replicando -r o -R l'intera struttura della directory di origine in modo ricorsivo nella posizione di destinazione. Viene utilizzato in una situazione in cui si desidera copiare tutti i file e le sottodirectory contenute in una directory, quindi copierà semplicemente l'intera directory anziché solo i suoi file nel percorso di destinazione desiderato. Anche se la directory di destinazione non esiste, ne creerà una e, se esistesse già, sostituirà e sovrascriverà i file esistenti:

cp -R ignite demo2

Comando di copia interattiva

Di solito, quando usi il comando copy se il file di destinazione esiste già, lo sovrascrive semplicemente. Per renderlo interattivo in modo che mostri una richiesta di conferma durante la copia di un file, il –i entra in gioco l'argomentazione. Usando questo argomento, ogni volta che copierai il file sorgente ceos3c.txt nella posizione di destinazione e lì esisterebbe un file con lo stesso nome, quindi verrà richiesto di chiedere conferma per sovrascrivere il file di destinazione demo.txt .

Se rispondi alla richiesta come y (sì), sovrascriverà il file di destinazione o se la tua risposta è n (no) quindi salverà il contenuto di destinazione dalla cancellazione.

cp -i ceos3c.txt demo.txtCode language: Bash (bash)

Comando di copia dettagliata

A volte, quando esegui un'operazione complessa con il comando Linux copy file, che include più file di origine:ceos3c.txt , ceos3c_new.txt , ceos3c2.txt , ceos3c3.txt alla nuova cartella di destinazione , ci sarebbero diverse possibilità di errori di battitura o di una destinazione errata poiché si tratta di un'operazione basata sulla riga di comando, quindi, in questo caso, puoi utilizzare la verbosità -v . Ti mostrerà l'output dettagliato delle azioni eseguite, da dove si verifica la fonte e dove viene stimata:

cp -v ceos3c.txt ceos3c_new.txt ceos3c2.txt ceos3c3.txt newfolder/

Backup di un file

Si verifica una situazione in cui è necessario creare un backup del file di destinazione demo.txt durante la copia del contenuto del file sorgente ceos3c.txt . In questo caso, c'è il -b bandiera per questo scopo. Aiuta a creare un backup del file nella stessa cartella con un nome e un formato diversi.

cp -b ceos3c.txt demo.txtCode language: Bash (bash)

Conservazione degli attributi del file

Durante la copia di un file sorgente ceos3c.txt nel file di destinazione demo.txt , è necessario preservare gli attributi del file per analisi forensi o altri motivi, quindi utilizzare -p bandiera per questo. Manterrà il seguente attributo del file di origine in quello di destinazione:

  • Modifica e data/ora di accesso
  • Flag e modalità dei file
  • ID utente e gruppo
  • Elenco di controllo accessi (ACL)
  • Attributi estesi (EA)
cp -p ceos3c.txt demo.txtCode language: Bash (bash)

Copia usando il carattere jolly

La stella * il carattere jolly viene utilizzato per selezionare tutti i file e le cartelle all'interno della cartella corrente. Come mostrato nell'esempio sopra, ho usato la fonte in due modi per copiare tutti i file (nel primo screenshot) e un gruppo di file (nel secondo screenshot).

In primo luogo, ho copiato tutti i file utilizzando un * carattere che ha copiato tutti i file indipendentemente dalle loro differenze nella cartella di destinazione, mentre in un secondo modo ho copiato tutti i file che hanno .txt estensione indipendentemente dai loro nomi alla cartella di destinazione. E non solo .txt , puoi copiare file di qualsiasi estensione in questo modo:

cp * newfolder/
cp *.txt newfolder/

Forza la copia su un file

Quando l'autorizzazione di un file di destinazione non consente di sovrascrivere i dati del file di origine su di esso ed è necessario scrivere i dati su di esso con forza, in questo caso, il –f la bandiera diventa a portata di mano. Usando –f (force) del comando Linux copy file, è possibile sovrascrivere forzatamente il file di destinazione con i dati del file di origine. Elimina prima il file di destinazione e poi copia il contenuto del file di origine su di esso:

cp -f ceos3c.txt demo.txtCode language: CSS (css)

Un collegamento simbolico è un particolare tipo di file che punta a un altro file simile a un collegamento in un Mac o Windows. Potrebbe essere necessario il contenuto del file di origine senza posizionare il file effettivo a causa delle modifiche dinamiche di una particolare directory che potrebbero danneggiare il file.

In questo scenario, puoi utilizzare i –s flag (link simbolico), che creerà un puntatore dalla destinazione verso la sorgente e creerà un'immagine (copia esatta ) del file di origine nel file di destinazione. Ogni volta che il file di origine viene eliminato, il puntatore si rompe e la destinazione non manterrà più l'immagine del file di origine:

cp –s ceos3c demo

La presenza di un puntatore tra la destinazione e il file di origine cambierà l'icona del file di destinazione, come mostrato di seguito:

L'icona quando è presente il puntatore

L'icona quando il puntatore non è presente

Copia comando con attributo Recency

Potrebbero verificarsi scenari in cui si desidera copiare solo i file di origine solo se sono più recenti di quelli di destinazione.

Questa funzionalità può essere facilmente raggiunta utilizzando -u flag del comando di copia del file di Linux. Nell'esempio mostrato di seguito, puoi vedere che il file di destinazione (demo) era più recente del file di origine (ceos3c), quindi non ha modificato il contenuto del file di destinazione con -u comando. Puoi gestire la ridondanza dei file, ed è possibile prevenire la perdita di dati, che potrebbe verificarsi sovrascrivendo erroneamente i vecchi dati su quelli nuovi:

cp –u ceos3c demo

Conclusione del comando Linux Copy File

Come hai visto fino ad ora, l'utilizzo di cp comando è semplice da capire, come mostrato negli esempi trattati in questo tutorial. Spero che questo ti aiuterà a capire meglio il comando Linux CP e tutti i suoi diversi casi d'uso.


Linux
  1. gcp - Un'utilità avanzata per la copiatrice di file per Linux

  2. Crittografia e decrittografia dei file semplificate con GPG

  3. Linux:tutto è un file?

  4. comando Linux cp

  5. Copia file Linux con ETA?

Copia un file in più directory dalla riga di comando su Linux

Come copiare file e directory nel terminale Linux

Che cos'è il file system Linux? Guida facile

Il comando CP di Linux:spiegato e semplificato

Il comando di spostamento di Linux:spiegato e semplificato!

Il comando di spostamento del file di Linux:semplificato!