Script on/off programma

Questo script spegne amule nel caso in cui si accenda un computer con un ip che va dal 192.168.1.10 al 192.168.1.20 e riavvia amule quando nessun computer รจ presente in tale intervallo.

#!/bin/bash

ipmon="192.168.1.10 192.168.1.20"
timer=60

trap bashtrap SIGINT
bashtrap()
{
	clear
	echo ""
	echo " * Kill amule client @" $(date)
	sudo blockcontrol stop
	echo ""
	amulecmd --command=shutdown -q
	sleep 10
	exit
}

clear
echo ""
echo "Mule Control 1.1 (use CTRL+C to kill process)"
echo ""
echo " * Start amule client @" $(date)
sudo blockcontrol start
echo ""
amule > /dev/null &

while sleep $timer
do
        pingalive=$(fping -a -g $ipmon 2> /dev/null)
        pidamule=$(ps aux | grep [a]mule)
        if [[ -n $pingalive && -n $pidamule ]]
        then
		clear
		echo ""
                echo " * Ping warning " $(echo $pingalive) " @" $(date)
                echo ""
                amulecmd --command=shutdown -q
        elif [[ -z $pingalive && -z $pidamule ]]
        then
		clear
		echo ""
                echo " * Ping free @" $(date)
                echo ""
                amule > /dev/null &
        fi
done

In caso manchi, installare il pacchetto di ping multiplo con il solito:

sudo aptitude install fping

Comments are closed.