Назад | Перейти на главную страницу

Почему я не могу заставить wget передавать стандартный вывод в / dev / null?

Когда я запускаю эту команду, она работает должным образом:

wget -p https://www.google.com/

После запуска этой команды я проверяю код ошибки с помощью

echo $?

Это возвращает 0, указывая, что последняя команда была выполнена без каких-либо ошибок.

Сейчас бегу:

wget -p https://www.google.com/ >/dev/null

Эта последняя команда должна подавлять стандартный вывод, но это не так. Так, что происходит? Это почти похоже на wget, потому что у меня никогда раньше не было проблем с конвейером стандартного вывода с помощью других команд.

Также стоит отметить, что если вы запустите:

wget -p https://www.google.com/ 2>/dev/null

весь вывод подавляется. Кто-нибудь захочет просветить сбитого с толку человека?

Хорошо, wget -p https://www.google.com/ &> /dev/null работает. Это потому wget вывод в stderr вместо stdout. Вы можете проверить wget руководство.

‘--Output-file = logfile’

Записывать все сообщения в файл журнала. Сообщения обычно передаются стандартной ошибке.