Ricerca nel sito web

Come scaricare ed estrarre file Tar con un solo comando


Tar (Tape Archive) è un formato di archiviazione file popolare in Linux. Può essere utilizzato insieme a gzip (tar.gz) o bzip2 (tar.bz2) per la compressione. È l'utilità da riga di comando più utilizzata per creare file di archivio compressi (pacchetti, codice sorgente, database e molto altro) che possono essere trasferiti facilmente da una macchina all'altra o su una rete.

Leggi anche: 18 esempi di comandi Tar in Linux

In questo articolo, ti mostreremo come scaricare archivi tar utilizzando due noti downloader da riga di comando: wget o cURL ed estrarli con un solo comando.

Come scaricare ed estrarre file utilizzando il comando Wget

L'esempio seguente mostra come scaricare e decomprimere gli ultimi database GeoLite2 Country (utilizzati dal modulo GeoIP Nginx) nella directory corrente.

wget -c http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz -O - | tar -xz

L'opzione wget -O specifica un file in cui vengono scritti i documenti, e qui usiamo -, il che significa che verrà scritto sullo standard output e inviato a tar e al flag tar -x abilita l'estrazione di file di archivio e -z decomprime i file di archivio compressi creati da gzip.

Per estrarre i file tar in una directory specifica, /etc/nginx/ in questo caso, utilizzare il flag -C come segue.

Nota: se estrai file in una directory particolare che richiede permessi di root, utilizza il comando sudo per eseguire tar.

sudo wget -c http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz -O - | sudo tar -xz -C /etc/nginx/

In alternativa, puoi utilizzare il seguente comando, qui il file di archivio verrà scaricato sul tuo sistema prima che tu possa estrarlo.

sudo wget -c http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz && tar -xzf  GeoLite2-Country.tar.gz

Per estrarre il file di archivio compresso in una directory specifica, utilizzare il seguente comando.

sudo wget -c http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz && sudo tar -xzf  GeoLite2-Country.tar.gz -C /etc/nginx/

Come scaricare ed estrarre file utilizzando il comando cURL

Considerando l'esempio precedente, ecco come puoi utilizzare cURL per scaricare e decomprimere gli archivi nella directory di lavoro corrente.

sudo curl http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz | tar -xz 

Per estrarre il file in una directory diversa durante il download, utilizzare il seguente comando.

sudo curl http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz | sudo tar -xz  -C /etc/nginx/
OR
sudo curl http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz && sudo tar -xzf GeoLite2-Country.tar.gz -C /etc/nginx/

È tutto! In questa breve ma utile guida ti abbiamo mostrato come scaricare ed estrarre file di archivio con un unico comando. Se hai domande, utilizza la sezione commenti qui sotto per contattarci.