Linuxneuling
Tripel-As
Moin,
wie kann ich im Skript if zum Laufen bringen, da if in der while Schleife verschachtelt ist. Punkt 2 (User erstellen bzw. einer Gruppe zuweisen) funktioniert nicht... Ist das überhaupt möglich if in der while zu verschachteln?
Folgende Meldung erhalte ich nach Ausführen des 2. Punkts:
Irgendwie ist ein Fehlerteufel eingeschlichen, dass blöderweise die username als Gruppe interpretiert wird :-(
wie kann ich im Skript if zum Laufen bringen, da if in der while Schleife verschachtelt ist. Punkt 2 (User erstellen bzw. einer Gruppe zuweisen) funktioniert nicht... Ist das überhaupt möglich if in der while zu verschachteln?
Code:
#!/bin/bash
schleife=1
while [ $schleife=1 ]
do
printf " 1:User erstellen\n\n"
printf " 2:User erstellen bzw. einer Gruppe zuweisen\n\n"
printf " 3:Ende\n\n"
read ART
case $ART in
# case1
1)
echo "Bitte geben Sie den Username an:"
read NAME
echo "Bitte geben Sie die UID an:"
read user
echo "User \"$NAME\" wird mit UID \"$user\" erstellt"
echo
useradd -M -s /bin/false -u ${user} ${NAME}
echo
passwd ${NAME}
echo
echo "User \"$NAME\" wurde erstellt bzw. Passwort gaendert"
;;
#case 2
2)
printf "Bitte geben Sie den Username an:\n\n"
read NAME
printf "Bitte geben Sie die Gruppe an:\n\n"
read GRUPPE
printf "Jetzt wird die Datei /etc/groups ueberprueft, ob die Gruppe vorhanden ist.\n\n"
grep -w '$(GRUPPE)' /etc/group
{if [ $? -eq 1 ] then 'groupadd ${GRUPPE}' && printf 'Die Gruppe $(GRUPPE) wurde erstellt!\n\n
else printf 'Gruppe \"$GRUPPE\" existiert bereits!\n\n
fi}
useradd -M -s /bin/false -g ${GROUP} ${NAME}
printf "User \"$NAME\" wird erstellt und der \"$GRUPPE\" zugeteilt.\n"
;;
#case 3
3)
break
;;
*)
echo "Die Auswahl ist ungueltig"
#case ende
esac
#while ende
done
#rueckgabewert bei erfolg ist 0
exit 0
Folgende Meldung erhalte ich nach Ausführen des 2. Punkts:
Code:
user: line 34: {if: command not found
user: line 36: fi}: command not found
useradd: Unknown group `username'.
User "username" wird erstellt und der "gruppe" zugeteilt.
Irgendwie ist ein Fehlerteufel eingeschlichen, dass blöderweise die username als Gruppe interpretiert wird :-(