GNU/Linux >> Linux Esercitazione >  >> Linux

Comando cpio:copia, elenca ed estrae file da e verso archivi

Il comando cpio (copy in/out) di Linux/UNIX copia, elenca ed estrae i file da e verso un singolo file o archivi. Alcune delle opzioni disponibili con il comando cpio sono elencate nella tabella seguente. Il comando cpio richiede che sia specificata una delle opzioni o, i o p.

Opzione Descrizione
-o Copia i dati.
-i Estratti da una copia.
-t Elenca i contenuti della copia.
-v Modalità dettagliata.
-p Legge da una copia per ottenere i nomi dei percorsi.
-a Reimposta i tempi di accesso ai file dopo che sono stati copiati.

In questo post, discuteremo alcuni esempi per comprendere l'uso del comando cpio.

Esempio 1 :per copiare il contenuto di /home, esegui il comando find come mostrato e reindirizza l'output a /tmp/home.cpio.

# find /home | cpio -ov > /tmp/home.cpio
/home
/home/geek
/home/geek/CentOS-7.0-1406-x86_64-DVD.iso.3
/home/geek/CentOS-7.0-1406-x86_64-DVD.iso.4
/home/geek/.profile
/home/geek/CentOS-7.0-1406-x86_64-DVD.iso.2
/home/geek/.bashrc
...............................................

Esempio 2 :per elencare i contenuti di home.cpio.

# cpio -itv < /tmp/home.cpio
-rw-rw-r--   1 geek geek     2556 Nov 29 13:03 /home/geek/ubuntu
-rw-rw-r--   1 geek geek     2255 Sep  1 14:32 /home/geek/.grive-last-sync.log
drwxr-xr-x  17 geek geek        0 Dec  5 15:46 /home/geek/Desktop
-rw-rw-r--   1 geek geek   357376 Sep 11 12:23 /home/geek/Desktop/mysql-classroom.doc
-rw-rw-r--   1 geek geek    43008 Sep 27 13:16 /home/geek/Desktop/linux_interview_question.doc
drwxrwxr-x   3 geek geek        0 Sep 12 13:59 /home/geek/Desktop/July-2014
-rw-rw-r--   1 geek geek     8147 Sep 11 13:04 /home/geek/Desktop/July-2014/brainuse.php
-rw-rw-r--   1 geek geek    10885 Sep 11 13:16 /home/geek/Desktop/July-2014/news.php
drwxrwxr-x   2 geek geek        0 Sep 11 12:34 /home/geek/Desktop/July-2014/images
-rw-rw-r--   1 geek geek    13609 Sep 11 12:34 //cdn.thegeekdiary.com/home/geek/Desktop/July-2014/images/3.gif
-rw-rw-r--   1 geek geek   206334 Sep 11 12:34 //cdn.thegeekdiary.com/home/geek/Desktop/July-2014/images/July14-header.gif
-rw-rw-r--   1 geek geek     1736 Sep 11 12:34 //cdn.thegeekdiary.com/home/geek/Desktop/July-2014/images/2.gif
..............................................

Esempio 3 :per ripristinare i file da home.cpio.

# cpio -iv < /tmp/home.cpio

Esempio 4 :Per copiare i file direttamente da /home in una nuova directory chiamata /tmp/home.bkp.

# find /home | cpio -pvd /tmp/home.bkp
/tmp/home.bkp/home/geek/ubuntu
/tmp/home.bkp/home/geek/.grive-last-sync.log
/tmp/home.bkp/home/geek/Desktop
/tmp/home.bkp/home/geek/Desktop/mysql-classroom.doc
/tmp/home.bkp/home/geek/Desktop/linux_interview_question.doc
/tmp/home.bkp/home/geek/Desktop/July-2014
............................................

Esempio 5 :copia solo i file selezionati in home.cpio.

# find . -iname *.php -print | cpio -ov >/tmp/home.cpio 
./Desktop/July-2014/brainuse.php
./Desktop/July-2014/news.php
./Desktop/July-2014/developer_section.php
./Desktop/July-2014/mysql1.php
............................

Sopra Command copierà tutti i file con estensione '.php' in home.cpio.

Esempio 6 :Creazione dell'archivio '.tar' utilizzando 'cpio -F'.

# find . -iname *.php -print | cpio -ov -H tar -F /tmp/home.tar
./Desktop/July-2014/brainuse.php
./Desktop/July-2014/news.php
./Desktop/July-2014/developer_section.php
./Desktop/July-2014/mysql1.php
./Desktop/July-2014/index.php
............................................

Il comando precedente creerà un archivio tar "home.tar" di tutti i file con estensione ".php" usando "cpio -F".

Esempio 7 :elenca il contenuto del file “.tar” usando cpio.

# cpio -it -F /tmp/home.tar
Desktop/July-2014/brainuse.php
Desktop/July-2014/news.php
Desktop/July-2014/developer_section.php
Desktop/July-2014/mysql1.php
Desktop/July-2014/index.php
Desktop/July-2014/linux1.php
..................................

Esempio 8 :Estrai l'archivio ".tar" tramite cpio.

# cpio -idv -F /tmp/home.tar


Linux
  1. Come trovare file di configurazione MySQL, PHP e Apache

  2. Come trovare il numero di file in una directory e sottodirectory

  3. Esegui script Perl/PHP dalla riga di comando

  4. Come verificare se esiste un comando shell da PHP

  5. Comando per elencare tutti i file tranne . (punto) e .. (punto punto)

4 modi per trasferire file e directory su Linux

40 “lsof Command” semplice ed efficace nel sistema Linux

Cat Command in Linux:esempi essenziali e avanzati

Comando Stat:Visualizza gli attributi di file e directory

Comando tar di Linux per comprimere ed estrarre file

Linux:trova il numero di file in una directory e sottodirectory