wget (Web Get) es una herramienta de línea de comandos para recuperar contenido de servidores web. Algunas características clave de wget:
- Descarga archivos de manera recursiva y en segundo plano.
- Soporta descargas a través de proxies y conexiones seguras (HTTP, HTTPS, FTP).
- Reanuda descargas interrumpidas.
- Permite descargar sitios web completos con recursión y mirroring.
- Trabaja bien con scripts y procesos por lotes.
Es ideal usar wget en las siguientes situaciones:
- Descargas programadas o automatizadas:
- Mantener copias locales de sitios web
- Actualizar periódicamente bibliotecas o recursos
- Descargar nuevas versiones de software
- Descargas lentas o interrumpidas:
- wget puede reanudar descargas interrumpidas
- Útil para conexiones lentas o inestables
- Respaldo y mirroring de sitios web:
- Wget puede descargar sitios web recursivamente
- Útil para crear respaldos o reflejos locales de sitios web
- Integración con scripts y procesos por lotes:
- Wget se puede invocar fácilmente desde scripts de Bash, Python, etc.
- Permite automatizar tareas de descarga
En wget puedes usar la opción -O
(mayúscula) para especificar el nombre del archivo de salida y sobrescribirlo si ya existe. También existe la opción específica que es más directa:
El flag -N
o --timestamping
sobrescribirá el archivo solo si el remoto es más nuevo O puedes usar: -c
para continuar una descarga parcial --no-clobber
para NO sobrescribir (lo opuesto a lo que buscas)
La forma más directa sería usando:
wget -O archivo.txt http://ejemplo.com/archivo.txt
O si quieres descargar múltiples archivos y que todos se sobrescriban automáticamente:
wget --unlink http://ejemplo.com/archivo.txt
La opción --unlink
eliminará el archivo existente antes de empezar la descarga.
timestamping con wget. Este flag es útil cuando quieres mantener archivos locales sincronizados con versiones remotas.
wget -N http://ejemplo.com/archivo.txt
Por ejemplo, digamos que tienes un caso real donde quieres mantener actualizada una copia local de la última versión de jQuery:
# Descarga inicial
wget -N https://code.jquery.com/jquery-3.7.1.min.js
# Más tarde, puedes ejecutar el mismo comando para verificar actualizacioneswget -N https://code.jquery.com/jquery-3.7.1.min.js
Lo que hace -N
(–timestamping):
- Verifica la fecha de modificación del archivo local
- Compara con la fecha del archivo remoto
- Solo descarga si el archivo remoto es más nuevo
- Si el archivo local no existe, lo descarga
También puedes usar -N
con múltiples archivos:
wget -N https://ejemplo.com/archivo1.txt https://ejemplo.com/archivo2.txt
Y si quieres ver más información sobre lo que está haciendo, puedes agregar el flag verbose:
wget -N -v https://ejemplo.com/archivo.txt
Esta opción es especialmente útil cuando:
- Mantienes copias locales de documentación
- Actualizas bibliotecas o recursos
- Sincronizas archivos de configuración
- Descargas periódicamente archivos que se actualizan con frecuencia