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.