* Stefan Weigel schrieb am 2. Okt, 2000:
echo -n "Bitte GID eingeben : " read wert gefunden=0 cat /etc/group | while read zeile do IFS=":" set $zeile if test "$3" -eq $wert then echo "Die GID $wert ist die Gruppe $1" gefunden=1 fi done echo "$gefunden" [..]
Die Variable "gefunden", der ich bei erfolgreicher Suche den Wert 1 zuordnen will bleibt immer null! Wo liegt mein Fehler ?
Manche Shellprogramme starten fuer die einzelne Ketten in einer Pipeline eine neue Shell fuer die interne Befehle. Wie waere (nicht getestet): function IsGroup { typeset -i SYS_GID=0 cut -d: -f3 | while read SYS_GID ; do (( SYS_GID == $1 )) && return done < /etc/group false return } typeset -i TST_GID echo -n "Bitte GID eingeben : " read TST_GID if IsGroup $TST_GID ; then DoSomething ; fi Carlyle -- Bitte ignoriere den folgenden, von mir nicht stammenden Quatsch. -- Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser Mail ist nicht gestattet. This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorised copying, disclosure or distribution of the material in this e-mail is strictly forbidden. --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com