[Bashscript] Stringinhalt zählen + Problem: endlosschleife

broker2000

Member
ID: 11367
L
29 Juni 2006
6
1
Hallo Leute!!

Sorry,Ich muss euch nochmal nerven bin noch ein Bashscript-Anfänger:
Hoffe die Überschrift war richtig!

Ich möchte gern der Benutzer mehr als 3 Zeichen eingibt.
Wenn weniger dann Spruch "Fehlerhafte Eingabe-" und Wiederholung der Eingabe(name).

Meine bisherigen Ideen waren mit expr length, test -n und
mein aktuelle Idee sieht so aus:
Code:
# Ueberpruefen auf Leereingabe
pruef=`wc -c | tee anz`
cut anz
while anz >3 ; do
echo -e "\033[1;31mFehlerhafte eingabe! Bitte mehr als 3 Zeichen eingeben!\033[0m"
echo "Neue Eingabe - Bitte Namen vergeben!"
read name
done

Auch mit wc -c klappt es nicht, hab da scheinbar eine Endlosschleife drin^^.
Nach Eingabe weniger als 3 Zeichen sowie mit mehr als 3 Zeichen
kommt nichts mehr ich kann es nur noch mit STRG+C abbrechen.

Wer kann mir helfen???

Danke!!


Gruss,
broker2000
 
Machs nicht _zu_ kompliziert ;)
Code:
len=0
name=""
while [ $len -le 2 ]
do
	echo "Bitte Namen vergeben (min. 3 Zeichen)!"
	read name
	len=`echo $name | wc -c`
done

echo "name ist $name";