Skript

Post Reply
Message
Author
Alex

Skript

#1 Post by Alex »

Wer könnte denn bei solch einem Skript helfen?

Oder wo findet man Infos zu Skriptprogrammierung?

Vielen Dank,
mfG
Alex

Alex

Re: Skript

#2 Post by Alex »

Hoppla! Das war wohl der falsche Button! Ich bitte vielmals um Entschuldigung!!!!

Alex

gerri

Re: Skript

#3 Post by gerri »


arno

Re: Skript

#4 Post by arno »

hi

hab da ein script gefund aus dem du sicher das basteln kannst was du brauchst.

mfg arno
#!/bin/sh

return=$rc_done

case "$1" in

start)
echo "Ich arbeite nur beim Runterfahren ..."
;;

stop)

# smbstatus gibt die verbundenen Rechner aus und andere Sachen
# wir wollen nur wissen, ob rechner mit IPs aus dem lokalen Netz da sind
# grep 192.168.
/usr/bin/smbstatus | grep 192.168. > /tmp/drin

# das schicken wir in die Datei /tmp/drin und sehen dann nach, ob
# diese Datei groesser Null ist
if test -s /tmp/drin
then

# wenn sie groesser Null ist, sind och Clients angemeldet und die
# Warnungprozdur geht los: /tmp/drin ausgeben
# uns interessiert nur der Rechnername, steht an fuenfter Stelle
# awk '{ print$5 }'
# den gibst fuer jeden verbundenen share einmal, also Doubletten raus
# uniq > /tmp/drin2

cat /tmp/drin | awk '{ print$5 }' | uniq > /tmp/drin2

# jetzt für jeden rechnernamen in /tmp/drin2 eine nachricht schicken
for i in `cat /tmp/drin2`
do

# in /etc/clientwarn.msg steht der Text, der an die Clients gesendet wird
cat /etc/clientwarn.msg | /usr/bin/smbclient -M $i > /dev/null
done

# jetzt die Wartschleife ...
echo "Der Shutdown wird für 2 Minuten unterbrochen ..."
sleep 120

# Aufräumen
rm -rf /tmp/drin
rm -rf /tmp/drin2

echo -e "$return"
else
echo "keiner mehr da"
fi

;;

*) echo "Aufruf: $0 {start|stop}"
exit 1

esac

exit 0

Alex

Re: Skript

#5 Post by Alex »

Danke! Sehr hilfreich!!

Post Reply