Вы говорите, что вам нужен только ответ "200 OK" в комментарии.
Это позволяет найти решение с некоторыми дополнительными преимуществами по сравнению с
wget -O /dev/null -o /dev/null example.com
. Идея не в том, чтобы отбросить вывод каким-либо образом, но вообще не создавать вывод.
То, что вам нужен только ответ, означает, что данные, загружаемые в локальный файл index.html, не нужно загружать в первую очередь.
В протоколе HTTP команда «GET» используется для загрузки документа . Для доступа к документу способом, который делает все, кроме фактической загрузки документа, существует специальная команда «HEAD».
При использовании «GET» для этой задачи документ загружается и удаляется локально. Использование «HEAD» делает именно то, что вам нужно, оно не передает документ в первую очередь. Он всегда будет возвращать тот же код результата, что и GET по определению.
Синтаксис использования метода HEAD
с wget
немного странным: мы должны использовать опцию --spider
. В этом контексте он просто делает то, что мы хотим - получить доступ к URL с помощью «HEAD» вместо «GET».
Мы можем использовать опцию -q
(quiet), чтобы wget
не выводить подробности о том, что она делает.
Сочетание этого не wget
приведет ни к выводу чего-либо в stderr, ни к сохранению документа.
wget -q --spider 'http://example.com/'
Код выхода сообщает нам, был ли запрос успешным или нет:
$ wget -q --spider 'http://example.com/'
$ echo $?
0
$ wget -q --spider 'http://example.com/nonexisting'
$ echo $?
8
Для команды in crontab
тот факт, что в обоих случаях нет выходных данных, означает, что вы можете использовать получение отсутствия выходных данных как указание на ошибки снова.
Ваш пример команды будет изменен на это:
*/5 * * * * wget -q --spider mysite.com
Это имеет те же преимущества, что и wget -O /dev/null -o /dev/null example.com
. Дополнительным преимуществом является то, что вывод журнала и вывод документа не генерируются, а генерируются и отбрасываются локально. Или, конечно, большая разница в том, чтобы не загружать, а затем отбрасывать документ index.html
.
wget
с терминала и другим способом заключается в том, отображается ли индикатор выполнения.