friesco
Goto Top

Shell Scripten unter Debian

Hallo liebe Gemeinde,

Ich hab da ein Problem mit einem Script da ich mich nicht so gut mit Scripten auskenne.
Also folgendes:
Ich frage via snmp bei einer USV die Batteriespannung ab mit folgendem Befehl
/usr/lib/nagios/plugins/check_snmp -H 192.168.0.101 -o .1.3.6.1.2.1.33.1.2.5 | awk '{print$4}'
Leider gibt er mir den Befehl nicht mit einer Kommastelle aus. Also die Batteriespannung beträgt 55,0 Volt aber ich bekomme den Wert 550 ausgegeben. Nun hatte ich die Idee das ganze in einem Script laufen zu lassen und der mir den Wert abfängt und ich einfach durch 10 teilt.
z.B. mit expr $WERT / 10. aber ich bekomme immer einen Syntaxfehler angezeigt da die Variable wohl leer ist nehme ich an.
Wie bekomme ich den Wert in eine Variable rein???

schonmal vielen dank für eure Hilfe !!!

Gruß
Friesco

Content-ID: 124706

Url: https://administrator.de/contentid/124706

Ausgedruckt am: 25.11.2024 um 20:11 Uhr

CadelPigott
CadelPigott 11.09.2009 um 12:30:31 Uhr
Goto Top
Hallo Friesco,

hast du mit dem befehl 'snmpwalk' mal geguckt ob es einen MIB gibt der dir den Wert mit Kommastelle zurück gibt?

Ich checke AMP USV´s auf die selbe Weise mit Nagios.
Allerdings würde es sowohl mit als auch ohne Kommastelle funktionieren. Ich überprüfe lediglich ob die Batteriespannung größer oder kleiner als der Schwellenwert ist.

Gruß
Cadel
Friesco
Friesco 11.09.2009 um 12:40:23 Uhr
Goto Top
ja aber die Riello teile geben dies leider nicht aus.

Ich hab aber das Problem gelöst.... Hier mein mini Script^^

WERT=`/usr/lib/nagios/plugins/check_snmp -H 192.168.0.101 -o .1.3.6.1.2.1.33.1.2.5 | awk '{print$4}'`
SPANNUNG=`expr $WERT / 10`

echo Die Spannung betraegt $SPANNUNG Volt.

Aber dann teilt er zwar durch 10, schneidet aber den rest ab....
MIt

WERT=`/usr/lib/nagios/plugins/check_snmp -H 192.168.0.101 -o .1.3.6.1.2.1.33.1.2.5 | awk '{print$4}'`
SPANNUNG=`echo "scale=2; $WERT / 10" | bc`

echo Die Spannung betraegt $SPANNUNG Volt.
Zeigt er mir dann die Zahl mit 2 Kommastellen an.

Trozdem danke für deine Hilfe...

Gruß
Friesco


Edit:
Das einzige was ich falsch gemacht hatte die ganze Zeit sind die Backticks die ich vergessen habe.
Und das ich hinter der Variablen (z.B. WERT) ein leerzeichen hatte ( WERT=_)