¿Cómo canalizo un archivo descargado a la salida estándar en bash?

Respuestas:

47
wget -O - -o /dev/null  http://google.com
pQd
fuente
11
El -o / dev / null solo es necesario si realmente no te importan los errores, ya que sin eso los errores se escribirán en stderr (mientras que el archivo se escribe en stdout).
Greg Hewgill
Derecha. o puede verificar los códigos de error ... siempre que canalice la salida a un archivo y no a otro comando
pQd
AFAIK, no es necesario -o / dev / null porque eso va a stderr de todos modos.
Milan Babuškov
10
Puedes usar wget -qO- $URLpara simplificar las cosas.
Oli
wget -qO- $URLfunciona si estás utilizando Wget en Windows
Chris S
35

O use curl, donde es el comportamiento predeterminado.

curl http://www.google.com/

http://curl.haxx.se/

GodEater
fuente
44
-sno le hará daño callarlo, especialmente con un archivo pequeño.
Acumenus
6

Hay otros métodos que puede usar en lugar de wget y curl:

Puedes usar lynx:

# lynx -source http://www.google.com

w3m:

# w3m -dump_source http://www.google.com

y libwww-perl viene con un práctico programa llamado GET (también tiene HEAD y POST, que hacen lo que crees que hacen)

# GET http://www.google.com
David Pashley
fuente
1
Offtopic, pero he usado lynx en algunos de mis scripts para analizar html automáticamente cada vez que necesito el contenido de una página y no me importa el marcado. Es muy bueno para que
Matt Simmons
de hecho, tanto lynx como w3m tienen una opción -dump. Prefiero w3m por su soporte de mesa y marco.
David Pashley
0

Solo para agregar otra opción: a menudo uso lwp-request, de libwww-perl, para esto. Sale a STDOUT de forma predeterminada y es más probable que se instale curl en los sistemas que uso (su situación puede variar).

Jeff Tang
fuente
FWIW, Mac OS tiene curl (no wget) y creo que otros BSD también lo hacen. Al igual que muchos sistemas incrustados * nix que he usado. No estoy seguro si Perl es más común que el rizo.
Wyatt8740
0

Así es como lo hice:

URL='http://wordpress.org/extend/plugins/akismet/'
curl -s "$URL" | egrep -o "http://downloads.wordpress.org/plugin/[^']+" | xargs wget -qO-
Roger
fuente
0

Sugiero usar Aria2 . Es un descargador poderoso.

aria2c http://google.com.tw
Phil Huang
fuente