Problem mit Shell Skript

  • Hallo Breadfish.de Community,


    ich bin schon seit Tagen dabei ein kleines Verwaltungsskript zu schreiben und habe ein kleines Problem, und zwar hat mein Programm irgendein Problem mit der Schleife.
    Da ich (wie schon gesagt) etwas länger daran sitze gebe ich nun etwas die Hoffnung auf und hoffe, dass mir hier jemand behilflich sein kann.
    Hier mal mein Skript:



    #!/bin/bash



    Menü()
    {
    echo " *********************************************************** "
    echo -e " 1)Benutzer anlegen."
    echo -e " 2)Benutzer löschen."
    echo -e " 3)Gruppe anlegen."
    echo -e " 4)Gruppe löschen."
    echo -e " q)Verlassen!"
    echo " *********************************************************** "



    read -p "$(echo Bitte wählen Sie eine Option aus): " option
    echo " "



    while [$option != 'q']
    do



    case $option in



    1)
    BenutzerAnlegen;;



    2)
    BenutzerLöschen;;



    3)
    GruppeAnlegen;;



    4)
    GruppeLöschen;;



    q)
    Beenden;;



    *)
    Fehler;;



    esac
    done
    }
    Menü



    BenutzerAnlegen()
    {
    if [ $(id -u) -eq 0 ]; then
    read -p "Bitte geben Sie einen Usernamen ein: " username
    read -p "$(echo Bitte geben Sie ein Passwort für $username ein): " password
    egrep "$username" /etc/passwd > /dev/null
    if [ $? -eq 0 ]; then
    echo -e "Der Benutzer $username existiert bereits."
    else
    Passwort=$(perl -e 'print crypt($ARGV[0], "password")' $password)
    useradd -m -p $Passwort $username
    fi
    if [ $? -eq 0 ]; then
    echo -e "Der Benutzer $username wurde zum System hinzugefügt."
    else
    echo -e "Der Benutzer $username konnte nicht angelegt werden!"
    fi
    else
    echo -e "Sie sind nicht berechtigt einen Benutzer anzulegen oder zu entfernen! "
    fi
    }



    BenutzerLöschen()
    {
    echo -e "Bestehende Benutzer: "
    awk -F':' '{ print $1}' /etc/passwd
    read -p " Btte geben Sie einen Benutzernamen ein: " delname
    if [ $(id -u) == 0 ]; then
    userdel -r -f $delname
    else
    echo -e "Sie sind nicht berechtigt einen Benutzer zu entfernen!"
    fi
    }



    GruppeAnlegen()
    {
    read -p "Bitte geben Sie einen neuen Gruppennamen ein): " gruppenname
    egrep "$gruppenname" /etc/group > /dev/null
    if [ $? -g 0 ]; then
    echo -e "Die Gruppe $gruppenname existiert bereits."
    exit 1
    else
    groupadd -p $gruppenname
    if [ $? -r 0 ]; then
    echo -e "Die Gruppe $gruppenname wurde zum System hinzugefügt. "
    else
    echo -e "Die Gruppe $gruppenname konnte nicht angelegt werden! "
    exit 3
    fi
    fi
    }



    GruppeLöschen()
    {
    echo "Bestehende Gruppen: "
    awk -F':' '{print $1}' /etc/group
    if [ $(id -u) -eq 0 ]; then
    read -p " Btte geben Sie einen Gruppennamen ein: " delname
    groupdel -r -f $delgruppe
    else
    echo -e "Sie sind nicht berechtigt einen Gruppe zu entfernen!"
    exit
    fi
    }



    Beenden()
    {
    echo -e " Shell-Script.sh verlassen!"
    echo " "
    break
    }



    Fehler()
    {
    echo -e "$REPLY Option $option nicht vorhanden, bitte versuchen Sie es erneut! "
    }


    Wenn jemand Weitere Fehler findet, bitte Bescheid geben mit entsprechender Lösung.


    Mit freundlichen Grüßen


    Kmdt.Brandt