Cómo descargar archivos desde la línea de comandos de linux

Wget es un descargador muy fresco de línea de comandos para entornos Linux y UNIX. No se deje engañar por el hecho de que es una herramienta de línea de comandos. Es muy potente y versátil y puede coincidir con algunos de los mejores descargadores gráficas de todo hoy en día. Tiene características tales como la reanudación de descargas, control de ancho de banda, que puede manejar la autenticación, y mucho más. Voy a ir abriendo boca con los conceptos básicos del uso wget y luego te voy a mostrar cómo se puede automatizar una copia de seguridad completa de su sitio web utilizando wget y cron.

Vídeo: COMO COPIAR UN ARCHIVO DE LINUX MEDIANTE TERMINAL

Vamos a empezar con la instalación de wget. La mayoría de las distribuciones de Linux vienen con pre-instalado wget. Si administra a sí mismo aterrizar una máquina Linux sin una copia de wget intente lo siguiente. En un sistema basado en Red Hat Linux Fedora tal que puede utilizar:

# yum install wget

o si se utiliza un sistema basado en Debian como Ubuntu:

# sudo apt-get install wget

Uno de los anteriores debe hacer el truco para usted. De lo contrario, consulte con el manual de su distribución de Linux para ver cómo conseguir e instalar paquetes. wget también ha sido portado a Windows. Los usuarios de Windows puede acceder a este sitio web. Descarga los siguientes paquetes: ssllibs y wget. Extraer y copiar los archivos a un directorio como C: Archivos de programa wget y añadir ese directorio a la ruta de su sistema para que pueda acceder a ella con facilidad. Ahora usted debería ser capaz de acceder a wget desde la línea de comandos de Windows.

La operación más básica de un gestor de descargas necesita realizar es descargar un archivo desde una URL. He aquí cómo se usaría wget para descargar un fichero:

# wget https://sevenacross.com/photos.zip

Sí, es así de simple. Ahora vamos a hacer algo más divertido. Vamos a descargar un sitio web completo. He aquí una muestra del poder de wget. Si desea descargar una página web se puede especificar la profundidad que wget debe obtener los archivos. Digamos que quiere descargar los primeros eslabones de nivel de la página de inicio de Yahoo! `S. He aquí cómo haría eso:

# wget -r -l 1 https://yahoo.com/

Esto es lo que hace cada opciones. los -r activa la recuperación de archivos recursiva. los -l representa el nivel y el número 1 junto a él, le dice a WGET cuántos niveles de profundidad para ir al recuperar los archivos. Intente aumentar el número de niveles a dos y ver cuánto tiempo tarda wget.

Vídeo: Descargar páginas web por comando en linux con wget

Ahora bien, si desea descargar todas las imágenes “JPEG” de un sitio web, un usuario familiarizado con la línea de comandos de Linux podría suponer que un comando como “wget http: //sevenacross.com*.jpeg” funcionaría. Bueno, por desgracia, no lo hará. Lo que hay que hacer es algo como esto:

# wget -r -l1 -no-matriz -A.jpeg https://sevenacross.com

Otra opción muy útil en wget es la reanudación de una descarga. Digamos que usted comenzó la descarga de un archivo de gran tamaño y que perdió su conexión a Internet antes de la descarga podría completar. Se puede utilizar el -do opción de continuar su descarga desde el punto en que lo dejó.

# wget -c https://sevenacross.com/ubuntu-live.iso

Ahora vamos a pasar a la creación de una copia de seguridad diaria de un sitio web. El siguiente comando creará un espejo de un sitio en el disco local. Para este propósito wget tiene una opción específica, -espejo. Pruebe el siguiente comando, reemplazando https://sevenacross.com con la dirección de su sitio web.

# wget -mirror https://sevenacross.com/

Cuando el comando ha terminado de correr usted debe tener una réplica local de su sitio web. Esto hace que para una herramienta bastante útil para copias de seguridad. Vamos a convertir este comando en un script de shell fresco y programarlo para que se ejecute a la medianoche cada noche. Abra su editor de texto favorito y escriba lo siguiente. Recuerde que debe adaptar la ruta de la copia de seguridad y la URL del sitio web a sus necesidades.

#! / Bin / bash

AÑO = `date +”% Y”`
MES = `date +”% m”`
DÍA = `date +”% d”`

BACKUP_PATH = `/ home / backup /` # reemplazan camino con su directorio de copia de seguridad
WEBSITE_URL = `http: // url sevenacross.net` # sustituir con la dirección del sitio web que desea hacer copia de seguridad

# Crear y pasar al directorio de copia de seguridad
cd $ BACKUP_PARENT_DIR / AÑO $ / $ MES
mkdir $ DÍA
cd $ DÍA

wget -mirror $ {} WEBSITE_URL

Ahora guarda este archivo como algo parecido website_backup.sh y darle permisos de ejecución:

# chmod + x website_backup.sh

Abra la configuración de cron con el crontab mando y añadir la siguiente línea al final:

0 0 * * * /path/to/website_backup.sh

Usted debe tener una copia de su sitio web en / Home / backup / AÑO / MES / DÍA cada día. Para obtener más ayuda sobre cómo utilizar cron y crontab, véase este tutorial.

Hay mucho más que aprender sobre wget que he mencionado aquí. Lea la página hombre de wget.

Artículos Relacionados