J'utilise :
curl -f -s -I "http://example.com" &>/dev/null && echo OK || echo FAIL
-f --fail Échec silencieux (pas de sortie du tout) sur les erreurs HTTP
-s --silent Mode silencieux
-I --head Afficher uniquement les informations sur le document
Noter:
en fonction des besoins vous pouvez aussi supprimer le "-I" car dans certains cas il faut faire un GET et non un HEAD
curl -sL -w "%{http_code}\\n" "http://www.google.com/" -o /dev/null
-s
=Sortie silencieuse de cURL-L
=Suivre les redirections-w
=Format de sortie personnalisé-o
=Redirige la sortie HTML vers/dev/null
Exemple :
[~]$ curl -sL -w "%{http_code}\\n" "http://www.google.com/" -o /dev/null
200
Je supprimerais probablement le \\n
si je devais capturer la sortie.
Identique à @burhan-khalid, mais --connect-timeout 3
ajouté et --max-time 5
.
test_command='curl -sL \
-w "%{http_code}\\n" \
"http://www.google.com:8080/" \
-o /dev/null \
--connect-timeout 3 \
--max-time 5'
if [ $(test_command) == "200" ] ;
then
echo "OK" ;
else
echo "KO" ;
fi