Ich habe auch eine If/Else Schleife die nicht funktioniert. Es wird aber immer nur die Else Zeile ausgeführ und die If Zeile nicht obwohl die Bedingung erfüllt ist. Es schein so zu sein daß die Variable $1 irgendwie verschwindet, jedenfalls wenn ich die unter der else Schleife mit Echo ausgeben will, steht da was falsches. Wenn ich die Else Zeile weglasse funktioniert die If Zeile ohne Probleme. Natürlich könnte ich auch zwei If Anweisungen nehmen, aber das muß doch auch mit Else gehen. Wo ist denn hier der Fehler? Kann mir mal jemand weiterhelfen?
Code:
#!/bin/sh
stty | while read line ; do
set -- $line
if [ "$1" = "+numlock" ] ; then
echo "Numlock detected"
exit 1
else
echo "No Numlock detected"
exit 0
fi
done