Creare ed estrarre archivi con il comando TAR

()

Comando Tar in Linux (crea ed estrai archivi)

Il comando tar crea file tar convertendo un gruppo di file in un archivio.

Può anche estrarre archivi tar, visualizzare un elenco dei file inclusi nell’archivio, aggiungere file aggiuntivi a un archivio esistente e vari altri tipi di operazioni.

Tar è stato originariamente progettato per creare archivi per archiviare file su nastro magnetico, motivo per cui prende il nome Tape ARchive”. Questo articolo mostra come utilizzare il tarcomando per estrarre, elencare e creare archivi tarattraverso esempi pratici e spiegazioni dettagliate delle opzioni tar più comuni.

tar Sintassi dei comandi

Esistono due versioni di tar, tar BSD e tar GNU , con alcune differenze funzionali. La maggior parte dei sistemi Linux viene fornita con GNU tar preinstallato per impostazione predefinita.

La sintassi generale del tarcomando è la seguente:

tar [OPERATION_AND_OPTIONS] [ARCHIVE_NAME] [FILE_NAME(s)]

OPERATION- È consentito e richiesto un solo argomento dell’operazione. Le operazioni più utilizzate sono:
–create( -c) – Crea un nuovo archivio tar.
–extract( -x) – Estrarre l’intero archivio o uno o più file da un archivio.
–list( -t) – Visualizza un elenco dei file inclusi nell’archivio
OPTIONS – Le operazioni più frequentemente utilizzate sono:
–verbose( -v) – Mostra i file elaborati dal comando tar.
–file=archive=name( -f archive-name) – Specifica il nome del file di archivio.
ARCHIVE_NAME – Il nome dell’archivio.
FILE_NAME(s)– Un elenco separato da spazi di nomi di file da estrarre dall’archivio.

Se non fornito, viene estratto l’intero archivio.
Quando si eseguono comandi tar, è possibile utilizzare la forma lunga o breve delle operazioni tar e delle opzioni. I moduli lunghi sono più leggibili, mentre i moduli brevi sono più veloci da digitare. Le opzioni in formato lungo sono precedute da un doppio trattino ( –). Le opzioni in formato breve sono precedute da un singolo trattino ( -), che può essere omesso.

Creazione di un archivio Tar

Tar supporta una vasta gamma di programmi di compressione, come gzip, bzip2, lzip, lzma, lzop, xze compress. Quando si creano archivi tar compressi, è una convenzione accettata aggiungere il suffisso del compressore al nome del file di archivio. Ad esempio, se un archivio è stato compresso con gzip , dovrebbe essere chiamato archive.tar.gz.

Per creare un archivio tar, utilizzare l’ opzione -c seguita da -f e il nome dell’archivio.

Ad esempio, per creare un archivio denominato archive.tardai file denominati file1, file2, file3, eseguire il comando seguente:

tar -cf archive.tar file1 file2 file3

Ecco il comando equivalente che utilizza le opzioni di formato lungo:

tar –create –file=archive.tar file1 file2 file3

È possibile creare archivi dal contenuto di una o più directory o file. Per impostazione predefinita, le directory vengono archiviate in modo ricorsivo a meno che non –no-recursion venga specificata l’opzione.

L’esempio seguente creerà un archivio denominato user_backup.tardella /home/userdirectory:

tar -cf backup.tar /home/user

Utilizzare l’ -vopzione se si desidera visualizzare i file in fase di elaborazione.

Creazione di un archivio Tar Gz
Gzip è l’algoritmo più popolare per la compressione dei file tar. Quando si comprime archivi tar con gzip, il nome dell’archivio deve terminare con tar.gzo tgz.

L’ opzione -z dice a tar di comprimere l’archivio usando l’ algoritmo gzip mentre viene creato. Ad esempio, per creare un archivio tar.gz da determinati file, eseguire il seguente comando:

tar -czf archive.tar.gz file1 file2

Creazione dell’archivio Tar Bz2
Un altro popolare algoritmo per comprimere i file tar è bzip2. Quando si utilizza bzip2, il nome dell’archivio deve terminare con tar.bz2o tbz.

Per comprimere l’archivio con l’ algoritmo, bzip2 invoca tarcon l’ opzione -j. Il seguente comando crea un tar.bz2archivio dai file indicati:

tar -cjf archive.tar.bz2 file1 file2

Elenco degli archivi di tar
Se utilizzato con l’ opzione –list( -t), il tarcomando elenca il contenuto di un archivio tar senza estrarlo.

Il comando seguente, elencherà il contenuto del archive.tarfile:
tar -tf archive.tar

file1
file2
file3

Per ottenere maggiori informazioni come il proprietario del file , la dimensione del file, il timestamp , utilizzare l’ opzione –verbose( -v):

tar -tvf archive.tar

-rw-r–r– linuxize/users 0 2018-09-08 01:19 file1
-rw-r–r– linuxize/users 0 2018-09-08 01:19 file2
-rw-r–r– linuxize/users 0 2018-09-08 01:19 file3

Estrazione dell’archivio TAR
La maggior parte dei file archiviati in Linux sono archiviati e compressi utilizzando un formato tar o tar.gz. È importante sapere come estrarre questi file dalla riga di comando.

Per estrarre un archivio tar, usa l’ opzione –extract( -x) seguita dal nome dell’archivio:

tar -xf archive.tar

È anche comune aggiungere l’ -vopzione per stampare i nomi dei file estratti.

tar -xvf archive.tar

Estrazione dell’archivio Tar in una directory diversa

Per impostazione predefinita, tar estrarrà il contenuto dell’archivio nella directory di lavoro corrente . Utilizzare –directory( -C) per estrarre i file di archivio in una directory specifica:

Ad esempio, per estrarre il contenuto dell’archivio nella /opt/filesdirectory, è possibile utilizzare:

tar -xf archive.tar -C /opt/files

Estrazione degli archivi Tar Gz e Tar Bz2

Quando si estraggono archivi compressi come tar.gz o tar.bz2 , non è necessario specificare un’opzione di decompressione. Il comando è lo stesso di quando si estrae l’ tararchivio:

tar -xf archive.tar.gz

tar -xf archive.tar.bz2

Estrazione di file specifici da un archivio Tar

A volte, invece di estrarre l’intero archivio, potrebbe essere necessario estrarre solo alcuni file da esso.

Per estrarre uno o più file specifici da un archivio tar, aggiungi un elenco separato da spazi di nomi di file da estrarre dopo il nome dell’archivio:

tar -xf archive.tar file1 file2

Quando si estraggono i file, è necessario fornire i loro nomi esatti, incluso il percorso, come stampato da –list( -t).

L’estrazione di una o più directory da un archivio equivale all’estrazione di file:

tar -xf archive.tar dir1 dir2

Se si tenta di estrarre un file che non esiste, verrà visualizzato un messaggio di errore simile al seguente:

tar -xf archive.tar README

tar: README: Not found in archive
tar: Exiting with failure status due to previous errors

Estrazione di file da un archivio Tar utilizzando i caratteri jolly
Per estrarre i file da un archivio in base a un modello di caratteri jolly, utilizzare l’ opzione — wildcards e citare il modello per impedire alla shell di interpretarlo.

Ad esempio, per estrarre i file i cui nomi terminano con .js(file JavaScript), puoi utilizzare:

tar -xf archive.tar –wildcards ‘*.js’

Aggiunta di file all’archivio Tar esistente

Per aggiungere file o directory a un archivio tar esistente, utilizzare l’ operazione –append( -r).

Ad esempio, per aggiungere un file denominato newfilearchive.tar, esegui:

tar -rvf archive.tar newfile

Rimozione di file da un archivio Tar

Utilizzare l’ operazione –delete per rimuovere i file da un archivio.

L’esempio seguente mostra come rimuovere il file file1 da archive.tar:

tar –delete -f archive.tar file1

Conclusione

Gli usi più comuni del comando tar sono creare ed estrarre un archivio tar. Per estrarre un archivio, utilizzare il comando tar -xf seguito dal nome dell’archivio e per crearne uno nuovo utilizzare tar -czf seguito dal nome dell’archivio e dai file e dalle directory che si desidera aggiungere all’archivio.

/ 5
Grazie per aver votato!

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?