Как вы перенаправляете ответ wget на стандартный выход?


148

У меня есть , crontabчто wgetса PHP страница каждые пяти минут (только для запуска некоторых из них PHP - код), и я хочу , чтобы отправить вывод запроса на стандартный вывод, при отправке нормального wgetвывода /dev/null(или иным образом скрыть). Я не мог найти это в wgetруководстве.

Я ищу что-то вроде:

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

Кто-нибудь знает?


5
Ошибочно, должно быть «Как вы перенаправляете wget на ноль?».
Боб Стейн

2
@ BobStein-VisiBone Я думаю, что это называется правильно. Я хотел, чтобы вещь, к которой относится значение wget-ed, шла к a stdout, а нормальная stdout- к ней null(т.е. игнорировала то, что обычно печатается, а вместо этого печатала тело ответа).
Шон Адкинсон

6
Ой! Я стою исправлено. Я начал использовать wget http://example.com/page.php -qO- (это заглавная буква О.), которая стандартно выводит ТОЛЬКО тело ответа. Это то, что вы хотели?
Боб Стейн

Ответы:


157

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

или, если вы хотите перенаправить стандартный вывод ошибок также:

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

или, для codegolf :-)

wget -O-


12
Вы можете добавить, -nvчтобы индикатор прогресса не перезаписывал вывод.
Тор Клингберг

1
У этого подхода есть проблема - если статус ответа не 200, он не печатает тело. Есть мысли, чтобы решить это?
Имаскар

71

Более простая версия

wget -qO- http://example.com

эквивалентно

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

где

  • -q отключает вывод журнала, включая информацию об ошибках
  • -O -Эквивалентно -O /dev/stdout, означает выгрузить веб-страницу в файл с именем /dev/stdout.

2
Первый из них работает с wget BusyBox, что очень полезно. Я не думаю, что это нравится иметь место послеO
Zymhan

18
wget -qO /dev/null http://whatever.com/page.php
  • -q чтобы это было тихо
  • -O /dev/null игнорировать содержимое страницы

6

Вы также можете попробовать:

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

-qсделает это «тихий»

Или попросите файл перейти на какую-нибудь временную HTML-страницу, которую вы не против. whatever.com/tempFile.html


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

Это работает на моем Mac с Wget 1.12.

Не могли бы вы дать некоторые пояснения о том, что делает ваш код?
Тамара Вийсман

-O означает «записать вывод в этот файл»
thomasrutter
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.