Como descargar un ficheiro da liña de comandos de Linux

Nesta guía, aprenderá a descargar un ficheiro usando a liña de comandos de Linux.

Por que queres facer isto? Por que non usarías simplemente un navegador web nun entorno gráfico?

Ás veces non hai un ambiente gráfico. Por exemplo, se se conecta ao seu Raspberry PI usando SSH, entón está atrapado na liña de comandos.

Outro motivo para usar a liña de comandos é que podes crear un script cunha lista de ficheiros para descargar. Pode executar o script e deixalo executar en segundo plano .

A ferramenta que se destacará para esta tarefa chámase wget.

Instalación de wget

Moitas distribucións de Linux xa teñen instalado wget por defecto.

Se aínda non está instalado, proba un dos seguintes comandos:

Como descargar un ficheiro da liña de comandos

Para descargar ficheiros, cómpre coñecer polo menos o URL do ficheiro que desexa descargar.

Por exemplo, imaxina que desexa descargar a última versión de Ubuntu usando a liña de comandos. Podes visitar o sitio web de Ubuntu. Ao navegar polo sitio web pode acceder a esta páxina que proporciona unha ligazón a unha ligazón de descarga agora. Pode facer clic co botón dereito sobre esta ligazón para obter a URL do Ubuntu ISO que desexa descargar.

Para descargar o ficheiro usando wget empregando a seguinte sintaxe:

wget http://releases.ubuntu.com/14.04.3/ubuntu-14.04.3-desktop-amd64.iso?_ga=1.79650708.1078907269.1453803890

Isto é todo moi bo, pero necesitas saber o camiño completo para o arquivo que necesitas descargar.

É posible descargar un sitio completo mediante o seguinte comando:

wget -r http://www.ubuntu.com

O comando anterior copia o sitio completo, incluídos todos os cartafoles do sitio web de Ubuntu. Isto, por suposto, non é aconsellable porque baixaría moitos ficheiros que non necesitas. É como usar un mazo para cascar a porca.

Non obstante, podería descargar todos os ficheiros coa extensión ISO do sitio web de Ubuntu empregando o seguinte comando:

wget -r -A "iso" http://www.ubuntu.com

Isto aínda é un aceno aproximado para descargar os ficheiros que necesitas dun sitio web. É mellor saber a URL ou os URL dos ficheiros que desexa descargar.

Pode especificar unha lista de ficheiros a descargar usando o botón -i. Pode crear unha lista de URL usando un editor de texto do seguinte xeito:

nano filestodownload.txt

Dentro do ficheiro escriba unha lista de URLs, 1 por liña:

http://eskipaper.com/gaming-wallpapers-7.html#gal_post_67516_gaming-wallpapers-1.jpg
http://eskipaper.com/gaming-wallpapers-7.html#gal_post_67516_gaming-wallpapers-2.jpg
http://eskipaper.com/gaming-wallpapers-7.html#gal_post_67516_gaming-wallpapers-3.jpg

Garde o ficheiro mediante CTRL e O e saia do nano usando CTRL e X.

Agora podes usar wget para descargar todos os ficheiros usando o seguinte comando:

wget -i filestodownload.txt

O problema coa descarga de ficheiros desde internet é que ás veces o ficheiro ou URL non está dispoñible. O tempo de espera para a conexión pode levar un tempo e se está intentando descargar moitos ficheiros, é contraproducente esperar o tempo de espera predeterminado.

Pode especificar o seu propio tempo de espera empregando a seguinte sintaxe:

wget -T 5 -i filestodownload.txt

Se tes un límite de descarga como parte do teu negocio de banda ancha, quizais desexes limitar a cantidade de datos que wget pode recuperar.

Use a seguinte sintaxe para aplicar un límite de descarga:

wget --quota = 100m -i filestodownload.txt

O comando anterior deterá a descarga de ficheiros unha vez que se chegou a 100 megabytes. Tamén pode especificar a cota en bytes (use b en lugar de m) ou kilobytes (use k en vez de m).

Non pode ter un límite de descarga, pero pode ter unha conexión a Internet lenta. Se desexa descargar ficheiros sen destruír o tempo de internet de todos os usuarios, pode especificar un límite que estableza unha taxa de descarga máxima.

Por exemplo:

wget --limit-rate = 20k -i filestodownload.txt

O comando anterior limitará a velocidade de descarga a 20 kilobytes por segundo. Podes especificar o importe en bytes, kilobytes ou megabytes.

Se quere asegurarse de que non se sobrescriban os ficheiros existentes pode executar o seguinte comando:

wget -nc -i filestodownload.txt

Se xa existe un ficheiro na lista de marcadores na localización de descarga, non se sobrescribirá.

A Internet como sabemos non sempre é consistente e por ese motivo, unha descarga pode ser parcialmente completada e desaparece a súa conexión a internet.

Non sería bo se puideses continuar onde te deixas? Pode continuar a descarga usando a seguinte sintaxe:

wget -c

Resumo

O comando wget ten decenas de interruptores que se poden aplicar. Use o comando man wget para obter unha lista completa deles desde unha xanela de terminal.