Passa al contenuto principale

Lavorare con gli archivi TAR nel prompt dei comandi di Linux

· 2 minuti di lettura
Customer Care Engineer

Il formato TAR è estremamente diffuso nel mondo Linux ed è lo standard de facto per l'archiviazione dei dati. Non può comprimere i file da solo, ma collabora perfettamente con utility di compressione come gzip o bzip2. Pertanto, la maggior parte degli archivi impacchettati con questo formato che si trovano sul web avranno un nome come archive_name.tar.gz.

Se lavori anche con archivi ZIP o RAR, consulta le nostre guide su come gestirli dalla riga di comando di Linux.

Prima di iniziare

Nella maggior parte dei casi, tar è installato per impostazione predefinita. Per essere sicuro al 100%, esegui il comando per installare questo archiviatore:

Per Debian e Ubuntu:

sudo apt update && sudo apt install tar

Per CentOS e Rocky Linux/AlmaLinux:

sudo yum makecache && sudo yum install tar

Come creare un archivio TAR

Senza compressione:

tar -cvf archive.tar /file/path

Dove:

  • -c — per creare un archivio
  • -v — mostra i dettagli nel terminale (troverai utile se vuoi vedere cosa sta succedendo)
  • -f — specifica il nome del file di archivio

Con compressione aggiuntiva (ad esempio, gzip):

tar -czvf archive.tar.gz /file/path
  • -z — aggiunge la compressione gzip.

Il secondo comando è preferibile nella maggior parte dei casi, poiché la compressione aggiuntiva farà risparmiare tempo per il download o l'upload di un file da o verso il server, e l'archivio occuperà meno spazio su disco.

Come estrarre un archivio TAR

Per gzip:

tar -xzvf archive.tar.gz

Per bzip2:

tar -xjvf archive.tar.bz2

Per un archivio non compresso:

tar -xvf archive.tar

Opzioni utili aggiuntive

  • -t — visualizza il contenuto dell'archivio senza estrarlo:
tar -tvf archive.tar

Mostra un elenco dei file dell'archivio nella console, ma non lo estrae.

  • -u — aggiorna i file all'interno dell'archivio:
tar -uf archive.tar /path/to/new_files

Considera i seguenti dettagli quando aggiorni un file all'interno dell'archivio:

  • Se l'archivio non contiene new_file.txt, verrà aggiunto.
  • Se l'archivio contiene già un file con lo stesso nome, ma il suo contenuto sul disco è cambiato, questo file verrà aggiornato alla versione più recente.

Puoi anche usare questo comando per aggiornare più file contemporaneamente, ad esempio:

tar -uf archive.tar /path/to/new_files/*.txt

Questo comando aggiornerà tutti i file txt nell'archivio e ne aggiungerà di nuovi se non sono stati aggiunti prima.