GNU/Linux >> Linux Esercitazione >  >> Linux

Come archiviare file e directory in Linux [Parte 1]

Nel nostro tutorial precedente, abbiamo discusso su come comprimere e decomprimere i file usando gzip e bzip2 programmi. Oggi impareremo come archiviare file e directory in Linux. L'archiviazione e la compressione non sono la stessa cosa? Alcuni di voi potrebbero pensare spesso che questi termini si riferiscano allo stesso significato. Ma entrambi sono completamente diversi. L'archiviazione è il processo di combinazione di più file e directory (di dimensioni uguali o diverse) in un unico file. D'altra parte, la compressione è il processo di riduzione delle dimensioni di uno o più file o directory. L'archiviazione viene spesso utilizzata come parte dei backup di sistema o quando si spostano i dati da un sistema all'altro. Spero che tu capisca la differenza tra archiviazione e compressione. Passiamo ora all'argomento.

Archivia file e directory in Linux

I programmi più comuni per archiviare file e directory sono;

  1. catrame
  2. comprimi

Questo è un grande argomento. Quindi, pubblicherò questo articolo in due parti. Nella prima parte vedremo come archiviare file e directory usando Tar comando.

Archivia file e directory utilizzando il comando Tar

Catrame è un comando Unix che sta per T scimmia A archivio. Viene utilizzato per combinare o archiviare più file (di dimensioni uguali o diverse) in un unico file. Ci sono 4 modalità operative principali nell'utilità tar.

  1. c - Crea un archivio da uno o più file o directory.
  2. x - Estrai un archivio.
  3. r - Aggiungi file alla fine di un archivio.
  4. t - Elenca il contenuto dell'archivio.

Per l'elenco completo delle modalità, fare riferimento alle pagine man.

Crea un nuovo archivio

Ai fini di questa guida, utilizzerò una cartella denominata otechnix che contiene tre diversi tipi di file.

$ ls ostechnix/
file.odt image.png song.mp3

Ora creiamo un nuovo archivio tar della directory ostechnix.

$ tar cf ostechnix.tar ostechnix/

Qui, c flag referenzia crea un nuovo archivio e f fa riferimento al nome del file.

Allo stesso modo, per creare un archivio da un insieme di file nella directory di lavoro corrente, utilizzare questo comando:

$ tar cf archive.tar file1 file2 file 3

Estrai archivi

Per estrarre un archivio nella directory corrente, fai semplicemente:

$ tar xf ostechnix.tar

Possiamo anche estrarre l'archivio in una directory diversa usando C flag(c maiuscola). Ad esempio, il comando seguente estrae il file di archivio specificato in Download directory.

$ tar xf ostechnix.tar -C Downloads/

In alternativa, vai nella cartella Download ed estrai l'archivio al suo interno come di seguito.

$ cd Downloads/
$ tar xf ../ostechnix.tar

A volte potresti voler estrarre file di un tipo specifico. Ad esempio, il comando seguente estrae i file di tipo ".png".

$ tar xf ostechnix.tar --wildcards "*.png"

Crea archivi compressi con gzip e bzip

Per impostazione predefinita, Tar crea il file di archivio che termina con .tar estensione. Inoltre, il comando tar può essere utilizzato insieme alle utilità di compressione gzip e bzip2 . I file terminano con .tar le estensioni fanno riferimento al semplice archivio tar, i file terminano con tar.gz o .tgz fa riferimento a un gzippato archive e i file tar terminano con tar.bz2 o .tbz fa riferimento a bzippato archivio, rispettivamente.

Per prima cosa, creiamo un gzippato archivio:

$ tar czf ostechnix.tar.gz ostechnix/

Oppure,

$ tar czf ostechnix.tgz ostechnix/

Qui utilizziamo z flag per comprimere l'archivio usando il metodo di compressione gzip.

Puoi usare v flag per visualizzare lo stato di avanzamento durante la creazione dell'archivio.

$ tar czvf ostechnix.tar.gz ostechnix/
ostechnix/
ostechnix/file.odt
ostechnix/image.png
ostechnix/song.mp3

Qui, v si riferisce in modo dettagliato.

Per creare un archivio compresso con gzip da un elenco di file:

$ tar czf archive.tgz file1 file2 file3

Per estrarre l'archivio compresso con gzip nella directory corrente, utilizzare:

$ tar xzf ostechnix.tgz

Per estrarre l'archivio in una cartella diversa, usa il flag -C.

$ tar xzf ostechnix.tgz -C Downloads/

Ora creiamo un archivio zippato .

Per farlo, usa j segnala come sotto.

Crea un archivio di una directory:

$ tar cjf ostechnix.tar.bz2 ostechnix/

Oppure,

$ tar cjf ostechnix.tbz ostechnix/

Crea archivio dall'elenco dei file:

$ tar cjf archive.tar.bz2 file1 file2 file3

Oppure,

$ tar cjf archive.tbz file1 file2 file3

Per visualizzare l'avanzamento, utilizza v bandiera.

Ora, estraiamo l'archivio bzippato nella directory corrente. Per farlo, facciamo:

$ tar xjf ostechnix.tar.bz2

Oppure, estrai l'archivio in un'altra directory:

$ tar xjf ostechnix.tar.bz2 -C Downloads

Crea un archivio di più directory e/o file alla volta

Questa è un'altra caratteristica più interessante del comando tar. Per creare un archivio compresso con gzip di più directory o file contemporaneamente, usa questo comando:

$ tar czvf ostechnix.tgz Downloads/ Documents/ ostechnix/file.odt

Il comando precedente creerà un archivio di Download , Documenti directory e file.odt file in otechnix directory e salvare l'archivio nella directory di lavoro corrente.

Escludi directory e/o file durante la creazione di un archivio

Questo è abbastanza utile quando si esegue il backup dei dati. È possibile escludere dal backup i file o le directory non importanti. Qui è dove --escludi l'interruttore viene in aiuto. Ad esempio, vuoi creare un archivio della tua directory /home, ma escludere le directory Download, Documenti, Immagini, Musica.

Ecco come lo facciamo.

$ tar czvf ostechnix.tgz /home/sk --exclude=/home/sk/Downloads --exclude=/home/sk/Documents --exclude=/home/sk/Pictures --exclude=/home/sk/Music

Il comando precedente creerà un archivio compresso con gzip della mia directory $HOME, escluse le cartelle Download, Documenti, Immagini e Musica. Per creare un archivio bzippato, sostituisci z con j e usa l'estensione .bz2 nell'esempio sopra.

Elenca i contenuti dei file di archivio senza estrarli

Per elencare il contenuto di un file di archivio, utilizziamo t bandiera.

$ tar tf ostechnix.tar 
ostechnix/
ostechnix/file.odt
ostechnix/image.png
ostechnix/song.mp3

Per visualizzare l'output dettagliato, usa v bandiera.

$ tar tvf ostechnix.tar 
drwxr-xr-x sk/users 0 2018-03-26 19:52 ostechnix/
-rw-r--r-- sk/users 9942 2018-03-24 13:49 ostechnix/file.odt
-rw-r--r-- sk/users 36013 2015-09-30 11:52 ostechnix/image.png
-rw-r--r-- sk/users 112383 2018-02-22 14:35 ostechnix/song.mp3

Aggiungi file agli archivi esistenti

È possibile aggiungere/aggiornare file o directory agli archivi esistenti utilizzando r bandiera. Dai un'occhiata al comando seguente.

$ tar rf ostechnix.tar ostechnix/ sk/ example.txt

Il comando precedente aggiungerà la directory denominata sk e un file denominato example.txt nell'archivio ostechnix.tar.

Puoi verificare se i file sono stati aggiunti o meno usando il comando:

$ tar tvf ostechnix.tar 
drwxr-xr-x sk/users 0 2018-03-26 19:52 ostechnix/
-rw-r--r-- sk/users 9942 2018-03-24 13:49 ostechnix/file.odt
-rw-r--r-- sk/users 36013 2015-09-30 11:52 ostechnix/image.png
-rw-r--r-- sk/users 112383 2018-02-22 14:35 ostechnix/song.mp3
drwxr-xr-x sk/users 0 2018-03-26 19:52 sk/
-rw-r--r-- sk/users 0 2018-03-26 19:39 sk/linux.txt
-rw-r--r-- sk/users 0 2018-03-26 19:56 example.txt
TL;DR

Crea archivi tar:

  • Archivio tar semplice: tar -cf archivio.tar file1 file2 file3
  • Archivio tar compresso con Gzip: tar -czf archivio.tgz file1 file2 file3
  • Archivio tar compresso: tar -cjf archivio.tbz file1 file2 file3

Estrai archivi tar:

  • Archivio tar semplice: tar -xf archivio.tar
  • Archivio tar compresso con Gzip: tar -xzf archivio.tgz
  • Archivio tar compresso: tar -xjf archivio.tbz

Abbiamo appena trattato l'uso di base del comando tar. È sufficiente iniziare con il comando tar. Tuttavia, se vuoi conoscere maggiori dettagli, fai riferimento alle pagine man.

$ man tar

E per ora è tutto. Nella parte successiva, vedremo come archiviare file e directory utilizzando l'utilità Zip.

  • Come archiviare file e directory in Linux – Parte 2

Linux
  1. Come crittografare e decrittografare file e directory utilizzando Tar e OpenSSL

  2. Come archiviare file e directory in Linux [Parte 2]

  3. Come estrarre i file .gz e .tar.gz in Linux

  4. Come archiviare e comprimere file su Linux

  5. Linux Elimina file e directory

Come spostare file e directory in Linux (comando mv)

Come eseguire il backup di file e directory utilizzando Rsync in Linux

Comando tar di Linux – Come comprimere file in Linux

Come rinominare file e directory in Linux

Come copiare file e directory nel terminale Linux

Come eliminare file e directory utilizzando la riga di comando di Linux