ok, hab den Fehler gefunden:
while - do wird in einer subshell ausgeführt auf die sich auch das exit kommando bezieht.
also muss ich den shell - prozess mit "kill $$" killen
(how rude!!)
falls jemand ne elegantere lösung weiss ist er gerne eingeladen, die hier zu posten.
hier meine endfassung (auf einen neuen samba benutzer bezogen):
read -p "Wie ist der neue Benutzername?: " name
read -p "Vorname?: " vname
read -p "Nachname?: " nname
IFS=:
cat /etc/passwd |
while
read vaccount pw vuid gid bem home shell
do
if test $vaccount = $name
then
echo "Benutzer ist schon vorhanden!"
kill $$
fi
done
useradd -c "$vname $nname" -d /home/$name -g 500 -s /bin/false $name
smbpasswd -a $name
gruss
jorge
|