Pregunta: El sitio web de la intranet de mi empresa alberga GB de herramientas y aplicaciones de software. He estado tratando de descargarlos todos a través del comando wget y, sin embargo, mantener la misma estructura de directorios (el directorio de origen tiene herramientas organizadas en varias categorías, que me gusta mantener igual). Este es un ejemplo del directorio web de la intranet:http://intranet.company.com/software-tools/ . Las 'herramientas de software' es el directorio que contiene muchos subdirectorios y archivos. Me gustaría descargarlos todos recursivamente usando el comando wget. Pero parece que no puedo encontrar las opciones correctas para wget? ¿Puede alguien de techglimpse ayudarme? – Naveen.
Respuesta:
wget es la utilidad de línea de comandos para descargar archivos desde un servidor web remoto. Te permite descargar un archivo específico, recorrer un directorio (es decir, recursivamente) y también descargar archivos de subdirectorios.
wget descarga recursiva
# wget -r http://intranet.company.com/software-tools/
El comando anterior descargará todos los archivos y directorios dentro del directorio 'software-tools'. Pero recuerde, también descargará el archivo 'index.html' en el directorio 'software-tool' y también en los subdirectorios internos. Para evitar eso, debe usar la opción de rechazo con valor como 'index.html'.
opción de rechazo wget
# wget -r --reject "index.html*" http://intranet.company.com/software-tools/
Salida de muestra:
:::::::::::::::::::::::::: Removing intranet.company.com/software-tools/index.html?C=M;O=D since it should be rejected. ::::::::::::::::::::::::::
No ascienda al directorio principal mientras descarga recursivamente usando wget
Si no desea que wget siga el enlace en el índice del directorio y ascienda al directorio principal, debe usar la opción '–no-parent' como se muestra a continuación.
wget -r --no-parent --reject "index.html*" http://intranet.company.com/software-tools/
Encontrará más información en man wget.