Fancyfr0g
27.02.10, 17:46
Hallo zusammen
Habe mir letztens ein script zusammengeschustert. Bin allerdings kein Programmierfuchs und meine scripte sind meistens etwas chaotisch.
Aufgaben des Scripts:
Runterfahren wenn Client mit IP-Adresse 192.168.2.150 nicht mehr verbunden ist (mit mehreren Überprüfungen)
#!/bin/bash
down () {
sleep 300
if [[ "$(netstat -tn | awk '{print $5}' | grep 150 | sed -ne 1p |rev|cut -c7-20|rev)" != 192.168.2.150 ]]
then poweroff
else sleep1
fi
}
sleep1 () {
if [[ "$(netstat -tn | awk '{print $5}' | grep 150 | sed -ne 1p |rev|cut -c7-20|rev)" != 192.168.2.150 ]]
then down
else sleep 120
sleep1
fi
}
sleep 300
sleep1
Nun das Script funktionierte beim ersten Test super, nur bei weiteren Malen fuhr der Rechner leider runter während der Client noch verbunden war und Daten empfing.
Hat jemand vieleicht einen Tip für mich was ich besser machen könnte ?
Habe mir letztens ein script zusammengeschustert. Bin allerdings kein Programmierfuchs und meine scripte sind meistens etwas chaotisch.
Aufgaben des Scripts:
Runterfahren wenn Client mit IP-Adresse 192.168.2.150 nicht mehr verbunden ist (mit mehreren Überprüfungen)
#!/bin/bash
down () {
sleep 300
if [[ "$(netstat -tn | awk '{print $5}' | grep 150 | sed -ne 1p |rev|cut -c7-20|rev)" != 192.168.2.150 ]]
then poweroff
else sleep1
fi
}
sleep1 () {
if [[ "$(netstat -tn | awk '{print $5}' | grep 150 | sed -ne 1p |rev|cut -c7-20|rev)" != 192.168.2.150 ]]
then down
else sleep 120
sleep1
fi
}
sleep 300
sleep1
Nun das Script funktionierte beim ersten Test super, nur bei weiteren Malen fuhr der Rechner leider runter während der Client noch verbunden war und Daten empfing.
Hat jemand vieleicht einen Tip für mich was ich besser machen könnte ?