Uso:
curl -f -s -I "http://example.com" &>/dev/null && echo OK || echo FAIL
-f --fail Fallisce silenziosamente (nessun output) sugli errori HTTP
-s --silent Modalità silenziosa
-I --head Mostra solo le informazioni sul documento
Nota:
a seconda delle esigenze puoi anche togliere la "-I" perché in alcuni casi devi fare un GET e non un HEAD
curl -sL -w "%{http_code}\\n" "http://www.google.com/" -o /dev/null
-s
=Output di Silent cURL-L
=Segui i reindirizzamenti-w
=Formato di output personalizzato-o
=Reindirizza l'output HTML a/dev/null
Esempio:
[~]$ curl -sL -w "%{http_code}\\n" "http://www.google.com/" -o /dev/null
200
Probabilmente rimuoverei il \\n
se dovessi catturare l'output.
Uguale a @burhan-khalid, ma con l'aggiunta di --connect-timeout 3
e --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