La mayoría de los administradores de sistemas e incluso los usuarios de Linux prefieren la línea de comandos para sus tareas cotidianas, como editar y eliminar archivos, crear y eliminar usuarios, buscar direcciones IP, etc. La descarga de archivos es una tarea rutinaria que normalmente se realiza todos los días y que puede incluir tipos de archivos como ZIP, TAR, ISO, PNG, etc. Puede realizar esta tarea de manera simple y rápida utilizando el terminal de línea de comandos.
Una de las razones de esto es que la línea de comando es más rápida y usa menos recursos. Otra cosa que los usuarios hacen con frecuencia es descargar un archivo. También pueden hacerlo de manera más fácil y rápida usando la línea de comandos. Wget y curl son las utilidades de la línea de comandos que le permiten descargar archivos desde la línea de comandos.
Aquí en LinuxAPT, como parte de nuestros Servicios de Administración de Servidores, ayudamos regularmente a nuestros Clientes a realizar consultas relacionadas con el sistema Ubuntu.
En este contexto, veremos cómo usar las utilidades wget y curl para descargar un archivo en Ubuntu desde la línea de comandos.
Sin embargo, los mismos comandos también funcionarán en otras distribuciones de Linux como Debian, Gentoo y CentOS.
¿Cómo descargar archivos usando Wget?
Wget es una herramienta de línea de comandos utilizada para descargar archivos de la web. Usando wget, puede descargar un solo archivo HTML o un sitio web completo. Admite la descarga de archivos utilizando los protocolos HTTP, HTTPS y FTP. Viene instalado en casi todos los sistemas operativos Linux. Sin embargo, si no puede encontrarlo en su sistema o se elimina por error, puede instalarlo de la siguiente manera:
$ sudo apt install wget
La sintaxis básica del comando wget es la siguiente:
$ wget [option]… [URL]…
¿Cómo descargar un archivo desde la línea de comandos?
Para descargar un archivo desde la línea de comandos, simplemente escriba wget seguido de la URL del archivo que desea descargar. Digamos que para descargar "vnstat-2.6.tar.gz" un paquete de monitoreo de tráfico de red desde un sitio web, el comando sería:
$ wget https://humdi.net/vnstat/vnstat-2.6.tar.gz
Wget comenzará a descargar el archivo y verá el progreso. El archivo se guardará en el directorio actual de su Terminal.
¿Cómo reanudar un archivo descargado parcialmente?
Si una descarga se detiene por algún motivo o si la detuvo manualmente presionando Ctrl+C, puede reanudarla usando la opción -c del comando wget. Esta opción le permite continuar con un archivo parcialmente descargado donde lo dejó:
$ wget -c <URL>
¿Cómo desactivar la salida detallada?
De forma predeterminada, wget muestra la salida detallada que muestra todos los detalles del proceso de descarga. Si lo desea, puede limitar esta salida mediante la opción wget -nv:
$wget -nv <URL>
Esta opción solo muestra la información básica del proceso de descarga.
Para desactivar por completo la salida detallada, utilice la opción -q:
$ wget -q <URL>
¿Cómo descargar varios archivos?
Para descargar varios archivos, escriba wget seguido de las URL de todos los archivos.
$ wget <URL1> <URL2>
El comando wget descargará ambos archivos y los guardará en su directorio de Terminal actual.
Otra forma de descargar varios archivos es mediante la opción wget -i. Digamos que necesita descargar una gran cantidad de archivos.
Todo lo que necesita es crear un archivo de texto y enumerar todas las URL en este archivo (una URL por línea). Luego escriba wget seguido de la opción -i y el nombre del archivo que contiene una lista de URL:
$ wget -i <filename>
Nota:Aquí, hemos usado la opción -nv para desactivar la salida detallada.
¿Cómo descargar archivos usando Curl?
Curl es una herramienta de línea de comandos que se utiliza para descargar y cargar archivos hacia o desde el servidor. Admite más de 20 protocolos, incluidos FTP, HTTP, HTTPS, TFTP, IMAP, LDAP, etc.
Curl viene instalado en casi todos los sistemas operativos Linux. Sin embargo, si no puede encontrarlo en su sistema o se elimina por error, puede instalarlo de la siguiente manera:
$ sudo apt install curl
La sintaxis básica del comando curl es la siguiente:
$ curl [option]… [URL]…
Uso básico del comando curl
El uso básico del comando curl es descargar un solo archivo o el contenido de una página web. Digamos que para descargar una página web "index.html", escribiríamos curl seguido de la URL de la página web:
$ curl <URL>
Este comando descargará el archivo especificado en su directorio actual.
Una vez que ejecute el comando curl anterior, verá el contenido HTML que se muestra en la pantalla.
¿Cómo guardar el contenido de la página en un archivo?
Puede descargar y guardar el contenido de una página en un archivo en lugar de mostrarlo en la pantalla. Para guardar el archivo en su sistema, use el comando curl -O o la opción -o. La opción -O guarda el archivo con el mismo nombre que el archivo en la ubicación remota. Mientras que la opción -o permite guardar el archivo con un nombre diferente.
La opción -O
Con la opción -O, no necesita especificar el nombre del archivo. Guardará el archivo en su sistema con el nombre del archivo en la ubicación remota:
$ curl -O <URL>
Por ejemplo, el siguiente comando guardará el archivo con el nombre "index.html":
$ curl -O https://www.cisco.com/c/en/us/support/switches/index.html
La opción -o
Con la opción -o, puede especificar un nombre de archivo de su elección:
$ curl -o filename <URL>
Por ejemplo, el siguiente comando guardará el archivo con el nombre "switches.html":
$ curl -o switches.html https://www.cisco.com/c/en/us/support/switches/index.html
¿Cómo ejecutar curl en silencio?
Si no desea ver ninguna barra de progreso o ningún mensaje de error durante el proceso de descarga de curl, puede silenciarlo usando la opción -s de la siguiente manera:
$ curl -s <URL>
¿Cómo descargar varios archivos?
Para descargar varios archivos, escriba curl seguido de las URL de todos los archivos:
$ curl -O [URL1] -O [URL2] -O [URL3]….
Este comando guardará todos los archivos en su directorio de Terminal actual.
Si hay demasiadas URL que necesita descargar, cree un archivo de texto y enumere las URL en él.
Luego, para descargar todas las URL enumeradas en el archivo, use el siguiente comando:
$ xargs -n 1 curl -O < filename
Luego puede usar el comando ls para confirmar si se han descargado todos los archivos.
¿Cómo reanudar un archivo descargado parcialmente?
Si una descarga se detiene por algún motivo o si la detuvo manualmente presionando Ctrl + C, puede reanudarla usando la opción "-C -" del comando curl. Esta opción le permite continuar con un archivo parcialmente descargado donde lo dejó:
$ curl -C - <URL>