Probleme compararea 2 coduri de răspuns în coajă. Execută ondularea și necesitatea de a valida dacă răspunsul este între 200 și 400. De asemenea, există o șansă de răspuns să fie "000" atunci când un server este în jos.
#!/bin/sh
response1="200" #curl first url
response2="000" #curl second url
if (( $response1 -ge 400 || $response1 -lt 200 || $response2 -ge 400 || $response2 -lt 200 )) ; then
echo "Something went wrong, response code is not in success range"
exit 1
else
echo "Success"
exit 0
fi
((: 200 -ge 400 || 200 -lt 200 || 000 -ge 400 || 000 -lt 200 : eroare de sintaxă în expresia (eroare token este "400 || 200 -lt 200 || 000 -ge 400 || 000 -lt 200 ")
Dacă am schimba paranteze la [[...]] se întoarce întotdeauna adevărat. Dacă am schimba -lt să < și -ge la >= primesc urmatoarea eroare:
((: 200 = 400 || 200 < 200 || 000 = 400 || 000 < 200 : tentativa la non-variabile (eroare token este "= 400 || 200 < 200 || 000 = 400 || 000 < 200 ")