¿Cómo redirige la respuesta de wget a la salida estándar?


148

Tengo una crontabque wgetla página PHP sa cada cinco minutos (solo vaya a hacer algún código PHP), y quiero enviar el resultado de la petición a la salida estándar, mientras que el envío de la normal wgetsalida a /dev/null(o de otra manera ocultarlo). No pude encontrarlo en el wgetmanual.

Estoy buscando algo como:

wget -o stdout http://whatever.com/page.php > /dev/null

¿Nadie sabe?


55
Mistitled, debería ser "¿Cómo redirige wget a nulo?".
Bob Stein

2
@ BobStein-VisiBone Creo que se titula correctamente. Quería que lo que está wget-ed vaya a a stdout, y lo normal stdouta lo que ir null(es decir, ignorar lo que generalmente imprime y, en su lugar, imprimir el cuerpo de respuesta).
Sean Adkinson

66
Oh! Estoy corregido. He empezado a usar wget http://example.com/page.php -qO- (Eso es mayúscula). Ese estándar solo produce el cuerpo de respuesta. ¿Es eso lo que querías?
Bob Stein

Respuestas:


157

wget -O - http://whatever.com/page.php > /dev/null

o, si desea redirigir la salida de error estándar también:

wget -O - http://whatever.com/page.php > /dev/null 2>&1

o, para codegolf :-)

wget -O-


12
Es posible que desee agregar -nvpara evitar que el indicador de progreso sobrescriba la salida.
Tor Klingberg

1
Este enfoque tiene un problema: si el estado de respuesta no es 200, no imprime el cuerpo. ¿Alguna idea para resolverlo?
Imaskar

71

Una versión más simple

wget -qO- http://example.com

equivalente a

wget -q -O - http://example.com

dónde

  • -q apaga la salida del registro, incluida la información de error
  • -O -, equivalente a -O /dev/stdout, significa volcar la página web en un archivo llamado /dev/stdout.

2
El primero funciona con el wget de BusyBox, que es muy útil. No creo que le guste tener un espacio después delO
zymhan

18
wget -qO /dev/null http://whatever.com/page.php
  • -q para hacerla tranquila
  • -O /dev/null ignorar el contenido de la página

6

También puedes probar:

wget -q -O - http://whatever.com/page.php > /dev/null 

el -qlo hará "tranquilo"

O haga que el archivo vaya a alguna página html temporal que no le importa tener. whatever.com/tempFile.html


3
wget -O /dev/null http://example.com/

Funciona en mi mac con wget 1.12.

¿Podría dar alguna explicación sobre lo que hace su código?
Tamara Wijsman

-O significa "escribir salida en este archivo"
thomasrutter
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.