Jak przekierowujecie odpowiedź wget na standardowe wyjście?

148

Mam crontabże wgetstrony sa PHP co pięć minut (tylko do uruchomienia niektórych kodu PHP) i chcę, aby wysłać wyjście żądanie standardowe wyjście, podczas wysyłania normalne wgetwyjście /dev/null(lub w inny sposób ukryć). Nie mogłem tego znaleźć w wgetinstrukcji.

Szukam czegoś takiego:

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

Ktoś wie?

Sean Adkinson
źródło
5
Błędnie powinien brzmieć „Jak przekierowujesz wget do zera?”.
Bob Stein
2
@ BobStein-VisiBone Myślę, że jest poprawnie zatytułowany. Chciałem, aby rzecz, która jest wget-ed, poszła do stdout, a normalna stdoutdo null( do zignorowania tego, co zwykle drukuje, i zamiast tego wydrukowała treść odpowiedzi).
Sean Adkinson
6
O! Poprawiono mnie. Zacząłem używać wget http://example.com/page.php -qO- (To wielka Oh.) To standardowe wyjście WYŁĄCZNIE z ciałem odpowiedzi. Czy tego chciałeś?
Bob Stein

Odpowiedzi:

156

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

lub, jeśli chcesz przekierować również standardowe wyjście błędów:

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

lub, dla codegolf :-)

wget -O-

Tomas
źródło
12
Możesz dodać, -nvaby wskaźnik postępu nie nadpisał wyniku.
Tor Klingberg,
1
Takie podejście ma problem - jeśli status odpowiedzi nie jest równy 200, nie drukuje treści. Wszelkie myśli, aby to rozwiązać?
Imaskar,
70

Prostsza wersja

wget -qO- http://example.com

równoważny

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

gdzie

  • -q wyłącza dane wyjściowe dziennika, w tym informacje o błędach
  • -O -, równoważne z -O /dev/stdout, oznacza zrzucenie strony internetowej do pliku o nazwie /dev/stdout.
Martin Wang
źródło
2
Pierwszy działa z wgetem BusyBox, co jest bardzo pomocne. Nie sądzę, że lubi mieć miejsce poO
zymhan
18
wget -qO /dev/null http://whatever.com/page.php
  • -q uciszyć
  • -O /dev/null zignorować zawartość strony
unbeli
źródło
6

Możesz także spróbować:

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

-quczyni to „cicho”

Lub poproś plik o przejście na stronę tymczasową HTML, o której nie masz nic przeciwko. okolwiek.com/tempFile.html


źródło
3
wget -O /dev/null http://example.com/

źródło
Działa na moim Macu z wget 1.12.
Czy mógłbyś podać wyjaśnienie tego, co robi Twój kod?
Tamara Wijsman,
-O oznacza „zapisz dane wyjściowe do tego pliku”
thomasrutter,