Chtěl bych provést kontrolu stavu služby zavoláním na konkrétní adresu URL. Zdá se, že nejjednodušším řešením by bylo použít cron ke kontrole každou minutu. V případě chyb mi cron pošle e-mail.
Zkoušel jsem k tomu použít cUrl, ale nemohu jej přimět k výstupu zpráv pouze o chybách. Pokud se pokusím přesměrovat výstup do /dev/null, vytiskne zprávu o průběhu.
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 5559 100 5559 0 0 100k 0 --:--:-- --:--:-- --:--:-- 106k
Zkoušel jsem procházet možnosti zvlnění, ale nemůžu najít nic, co by vyhovovalo situaci, kdy chcete, aby to o úspěchu mlčelo, ale dělalo hluk při chybách.
Existuje způsob, jak přimět curl dělat to, co chci, nebo existuje nějaký jiný nástroj, na který bych se měl podívat?
Přijatá odpověď:
A co -sSf
? Z manuálových stránek:
-s/--silent Silent or quiet mode. Do not show progress meter or error messages. Makes Curl mute. -S/--show-error When used with -s it makes curl show an error message if it fails. -f/--fail (HTTP) Fail silently (no output at all) on server errors. This is mostly done to better enable scripts etc to better deal with failed attempts. In normal cases when a HTTP server fails to deliver a document, it returns an HTML document stating so (which often also describes why and more). This flag will prevent curl from outputting that and return error 22. This method is not fail-safe and there are occasions where non-successful response codes will slip through, especially when authentication is involved (response codes 401 and 407).
Například:
curl -sSf http://example.org > /dev/null
Jak Unix sleduje pracovní adresář uživatele při navigaci v systému souborů?
Nízká úroveň Bluetooth Utility?