Was muss ich im dem Skript ändern, damit ich unendlich Zahlen eingeben kann?
Hallo, ich habe hier ein Skript, welches ich ein bisschen umschreiben möchte, mein ziel ist es, dass ich soviel Zahlen wie ich will eingeben kann und mit dem Drücker der Taste X das Resultat bekomme. Akutell ist es so, das man nur zwei Zahlen eingeben kann und dann muss man auswählen ob man + oder - rechnen will.
echo "Geben Sie ihre Zahlen ein. "
read lol
read lolrip
echo "Was wollen Sie machen, geben Sie "
echo " Geben Sie für + 1 ein"
echo " Geben Sie für - 2 ein"
read ch
case $ch in
1)res=`echo $lol + $lolrip | bc`
;;
2)res=`echo $lol - $lolrip | bc`
;;
esac
echo "Resultat : $res"
Was muss ich umschreiben?
1 Antwort
Das kannst du über Kontrollstrukturen wie if lösen.
Siehe dazu: https://wiki.ubuntuusers.de/Shell/Bash-Skripting-Guide_f%C3%BCr_Anf%C3%A4nger/#Programmfuehrung
Dabei könntest du die Eingabe immer auf den Buchstaben "x" prüfen und dann das Ergebnis eines Arrays berechnen, in das hineingeschrieben wird, falls die Eingabe nicht "x" ist.
Aber aufpassen: Die Eingabe wird nicht auf int geprüft, sodass man auch versuchen könnte, Buchstaben zu addieren!
Auf int prüfen kann man in bash auch, mit regulären Ausdrücken. Hier wird gezeigt, wie es geht:
https://www.networkworld.com/article/2693361/unix-tip-using-bash-s-regular-expressions.html