GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Bash-Skript, um zu prüfen, ob eine öffentliche HTTPS-Site aktiv ist

Einer von vielen:

if curl -s --head  --request GET https://example.com | grep "200 OK" > /dev/null; then 
   echo "mysite.com is UP"
else
   echo "mysite.com is DOWN"
fi

Hier ist eine Möglichkeit, dies mit wget anstelle von curl zu tun. Denken Sie daran, dass MacOS standardmäßig nicht mit wget geliefert wird.

Eine erfolgreiche Webanforderung gibt einen Code von 200 zurück, ein Fehler gibt 300, 400, 404 usw. zurück (siehe REST-API-Codes)

Diese Zeile gibt ein 1 zurück wenn die Webanfrage erfolgreich war, wird andernfalls 0 zurückgegeben

wget -q  -O /tmp/foo google.com | grep '200' /tmp/foo | wc -l
1

Das check_http-Plugin von Nagios kann dies und noch viel mehr, einschließlich der Prüfung auf bestimmten Text in der Antwort. Sie können es unabhängig von Nagios selbst von einem Shell-Skript ausführen:

$ check_http --ssl -H www.google.com -r 'Feeling Lucky'
HTTP OK: HTTP/1.1 200 OK - 11900 bytes in 0.086 second response time |time=0.085943s;;;0.000000 size=11900B;;;0

$ echo $?
0

Linux
  1. Wie debuggt man ein Bash-Skript?

  2. Bash-Skript:Prüfen, ob eine Datei eine Textdatei ist?

  3. Wie überprüfe ich die Teilzeichenfolge in Shell Script Bash?

  4. Bash-Shell-Skript - Suchen Sie nach einem Flag und holen Sie sich seinen Wert

  5. Wie überprüfe ich den Internetzugang mit Bash-Skript in Linux?

35 Bash-Skriptbeispiele

So führen Sie ein Bash-Skript aus

Wie überprüfe ich die Syntax eines Bash-Skripts, ohne es auszuführen?

Überprüfen Sie, ob in einem Bash-Skript mindestens zwei Argumente angegeben sind

Jede Möglichkeit, das Bash-Skript zu beenden, aber das Terminal nicht zu verlassen

Bash-Skript-Musterabgleich