Introducción
wget es una herramienta común para administrar servidores UNIX /Linux /BSD de forma remota a través de una sesión ssh. Es posible que deba descargar software u otros archivos para la instalación. También hay algunos administradores de descargas gráficas para los sistemas operativos Linux y UNIX:
- kget: KGet es un administrador de descargas versátil y el ntuitivo para el sistema de escritorio KDE.
- gwget /gwget2: Gwget es un administrador de descargas para Gnome Desktop
- uget: administrador de descargas fácil de usar escrito en GTK +
wget no tiene una interfaz gráfica. Es compatible con HTTP, FTP, HTTPS y otros protocolos junto con funciones de autenticación y muchas otras opciones.
Cómo instalar el comando wget en Linux
Use el comando apt /apt-get si está usando Ubuntu /Debian /Mint Linux:
sudo apt install wget
El usuario de Fedora Linux debe escribir el comando dnf
sudo dnf install wget
El usuario de RHEL /CentOS /Oracle Linux debe escribir el comando yum:
sudo dnf install wget
El usuario de SUSE /OpenSUSE Linux debe escribir el comando zypper:
zypper install wget
El usuario de ArchLinux debe escribir el comando pacman:
sudo pacman -S wget
Ejemplos de comandos wget de Linux
Veamos algunos ejemplos comunes de comandos, sintaxis y uso de wget Linux. La sintaxis es la siguiente:
wget url
wget [options] url
Cómo descargar un solo archivo usando wget
Para descargar un solo archivo de línea de comando usando wget, use la siguiente sintaxis:
wget https://noviello.it/percorso/file.tar.gz
wget ftp://ftp.noviello.it/percorso/file.tar.gz
wget -O output.file https://noviello.it/percorso/file.name.tar.gz
Cómo descargar varios archivos usando wget
Para descargar varios archivos simultáneamente, simplemente escriba el comando varias veces:
wget https://noviello.it/download/file.tar.gz ftp://ftp.noviello.it/download/file2.tar.gz ftp://ftp.noviello.it/download/file3.tar.gz
También puede crear una variable de shell que contenga todas las URL y usar un bucle con BASH para descargar todos los archivos, por ejemplo:
URL="https://noviello.it/download/file1.tar.gz \
ftp://ftp.noviello.it/download/file2.tar.gz \
ftp://ftp.noviello.it/download/file3.tar.gz \
https://noviello.it/download/file4.tar.gz"
for u in $URL
do
wget "$u"
done
Cómo leer las URL de un archivo
Puede poner todas las URL en un archivo de texto y usar la opción -i de wget para descargar todos los archivos. Primero, cree un archivo de texto:
nano /home/url.txt
Agregue una lista de URL:
https://noviello.it/download/file1.tar.gz ftp://ftp.noviello.it/download/file2.tar.gz ftp://ftp.noviello.it/download/file3.tar.gz https://noviello.it/download/file4.tar.gz
Escriba el comando wget de la siguiente manera:
wget -i /home/url.txt
Reanudar descargas parciales
También puede obligar a wget a obtener un archivo parcialmente descargado, por ejemplo, reanudar las descargas. Esto es útil cuando desea finalizar una descarga iniciada por una instancia anterior de wget u otro programa: tenga en cuenta que esta opción solo funciona con servidores FTP /HTTP que admiten el encabezado "rango ".
wget -c https://noviello.it/percorso/file.tar.gz
wget -c -i /home/url.txt
Cómo forzar a wget a descargar todos los archivos en segundo plano
La opción -o se usa para forzar a wget a pasar a segundo plano inmediatamente después del inicio. Si no se especifica ningún archivo de salida con la opción -o, la salida se redirige al archivo wget-log:
wget -cb -o /home/url.log -i /home/url.txt
O:
nohup wget -c -o /home/url.log -i /home/url.txt &
nohup ejecuta el comando dado (wget en este ejemplo) con las señales de colgar ignoradas, de modo que el comando pueda continuar ejecutándose en segundo plano después de cerrar la sesión.
Cómo limitar la velocidad de descarga
Puede limitar la velocidad de descarga a una cantidad de bytes por segundo. La cantidad se puede expresar en bytes, kilobytes con el sufijo k o megabytes con el sufijo m. Por ejemplo, –limit-rate = 100k limitará la velocidad de descarga a 100 KB /s. Esto es útil cuando, por cualquier motivo, no desea que Wget consuma todo el ancho de banda disponible, útil, por ejemplo, cuando desea descargar un archivo grande:
wget -c -o /home/archivio.log --limit-rate=50k ftp://ftp.noviello.it/donwload/file.iso
use el sufijo m para megabytes (–limit-rate = 1m). También puede especificar la cuota de disco para la descarga automática a fin de evitar un ataque DoS en el disco. El siguiente comando se cancelará cuando se exceda la cuota (más de 100 MB).
wget -cb -o /home/url.log -i /home/url.txt --quota=100m
Cómo usar wget con sitios protegidos con contraseña
Puede proporcionar el nombre de usuario y la contraseña con wget de la siguiente manera:
wget --http-user=vivek --http-password=PASSWORD https://noviello.it/percorso/file.tar.gz
Otra forma de especificar el nombre de usuario y la contraseña es la propia URL.
wget 'https://nomeutente:[email protected]/file.tar.gz
Cómo descargar todos los archivos con la misma extensión desde el servidor FTP remoto
Por lo general, puede utilizar caracteres especiales de shell, también conocidos como caracteres comodín, como *,?, [] Para especificar los criterios de selección de los archivos. Lo mismo se puede utilizar con servidores FTP al descargar archivos.
wget ftp://noviello.it/percorso/downloads/*.pdf
O:
wget -g on ftp://noviello.it/percorso/downloads/*.pdf
Utilice lftp cuando necesite descargas multiproceso
lftp recupera las URL HTTP de forma similar a wget, pero segmenta la recuperación en varias partes para aumentar la velocidad de descarga. Obtiene el archivo especificado usando varias conexiones. Esto puede acelerar la transferencia, pero carga la red con un fuerte impacto en otros usuarios. Úselo solo si necesita transferir el archivo lo antes posible.
lftp -e 'pget -n 5 -c url/file.tar.gz; exit'
El comando descargará file.tar.gz en 5 segmentos /conexiones. Tenga en cuenta que el comando wget está disponible en Linux y UNIX /BSD.
Conclusión
Para obtener más información sobre el uso del comando wget:
man wget