Cómo descargar y extraer archivos Tar con un solo comando
Tar (Tape Archive) es un formato de archivo popular en Linux. Se puede utilizar junto con gzip (tar.gz) o bzip2 (tar.bz2) para compresión. Es la utilidad de línea de comandos más utilizada para crear archivos comprimidos (paquetes, código fuente, bases de datos y mucho más) que se pueden transferir fácilmente de una máquina a otra o a través de una red.
Lea también: 18 ejemplos de comandos Tar en Linux
En este artículo, le mostraremos cómo descargar archivos tar utilizando dos descargadores de línea de comandos muy conocidos: wget o cURL y extraerlos con un solo comando.
Cómo descargar y extraer archivos usando el comando Wget
El siguiente ejemplo muestra cómo descargar y descomprimir las últimas bases de datos de GeoLite2 Country (utilizadas por el módulo GeoIP Nginx) en el directorio actual.
wget -c http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz -O - | tar -xz
La opción wget -O
especifica un archivo en el que se escriben los documentos, y aquí usamos -
, lo que significa que se escribirá en la salida estándar y se canalizará a tar y al indicador tar. -x
permite la extracción de archivos comprimidos y -z
descomprime los archivos comprimidos creados por gzip.
Para extraer archivos tar a un directorio específico, /etc/nginx/ en este caso, incluya el uso del indicador -C
de la siguiente manera.
Nota: si extrae archivos a un directorio particular que requiere permisos de root, use el comando sudo para ejecutar tar.
sudo wget -c http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz -O - | sudo tar -xz -C /etc/nginx/
Alternativamente, puede usar el siguiente comando; aquí, el archivo comprimido se descargará en su sistema antes de que pueda extraerlo.
sudo wget -c http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz && tar -xzf GeoLite2-Country.tar.gz
Para extraer un archivo comprimido a un directorio específico, utilice el siguiente 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/
Cómo descargar y extraer archivos usando el comando cURL
Considerando el ejemplo anterior, así es como puedes usar cURL para descargar y descomprimir archivos en el directorio de trabajo actual.
sudo curl http://geolite.maxmind.com/download/geoip/database/GeoLite2-Country.tar.gz | tar -xz
Para extraer el archivo a un directorio diferente durante la descarga, use el siguiente 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/
¡Eso es todo! En esta breve pero útil guía, le mostramos cómo descargar y extraer archivos comprimidos con un solo comando. Si tiene alguna consulta, utilice la sección de comentarios a continuación para comunicarse con nosotros.