Vous dites que vous avez uniquement besoin de la réponse "200 OK" dans un commentaire.
Cela permet une solution avec des avantages supplémentaires par rapport à ceux de
wget -O /dev/null -o /dev/null example.com
. L'idée n'est pas de supprimer la sortie d'une certaine manière, mais de ne créer aucune sortie du tout.
Le fait que vous n'ayez besoin que de la réponse signifie que les données téléchargées dans le fichier local index.html n'ont pas besoin d'être téléchargées en premier lieu.
Dans le protocole HTTP, la commande 'GET' est utilisée pour télécharger un document . Pour accéder à un document de manière à tout faire sauf le télécharger, il existe une commande spéciale "HEAD".
Lorsque vous utilisez «GET» pour cette tâche, le document est téléchargé et supprimé localement. Utiliser "HEAD" fait exactement ce dont vous avez besoin, il ne transfère pas le document en premier lieu. Il retournera toujours le même code de résultat que "GET", par définition.
La syntaxe à utiliser la méthode HEAD
avecwget
est un peu étrange: nous avons besoin d'utiliser l'option --spider
. Dans ce contexte, il fait juste ce que nous voulons - accédez à l'URL avec "HEAD" au lieu de "GET".
Nous pouvons utiliser l’option -q
(quiet) pour ne wget
pas afficher les détails de ce qu’elle fait.
Combinant cela, wget
ne produira rien dans stderr, ni ne sauvera un document.
wget -q --spider 'http://example.com/'
Le code de sortie nous indique si la demande a abouti ou non:
$ wget -q --spider 'http://example.com/'
$ echo $?
0
$ wget -q --spider 'http://example.com/nonexisting'
$ echo $?
8
Pour une commande dans crontab
, le fait qu'il n'y ait pas de sortie dans les deux cas signifie que vous pouvez utiliser obtenir l'absence de sortie pour indiquer à nouveau des erreurs.
Votre exemple de commande serait changé en ceci:
*/5 * * * * wget -q --spider mysite.com
Cela a les mêmes avantages que wget -O /dev/null -o /dev/null example.com
. L'avantage supplémentaire est que la sortie du journal et la sortie du document ne sont pas générées, mais générées et ignorées localement. Bien sûr, la grande différence est d’éviter de télécharger puis de jeter le document index.html
.
wget
partir d'un terminal et le reste est si une barre de progression est affichée.