• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[solved] Bestimme Parameter im Shellscript übergeben

Servus,

ich habe ein kleines Programm in c geschrieben das ich über ein kleines Script einen Parameter zwischen 0 und 70000 übergeben möchte. Das Script schaut wie folgt aus:

Code:
#!/bin/sh
#Skript zur Parametereingabe
echo "Bitte geben Sie jetzt ihren Parameter ein: "; read i; i=$i
case "$i" in
[0-70000]*) exec ./gauss $i ;;
*) echo "Falscher Parameter" && exit 1;;
esac

Nun funktioniert das auch schon recht gut ausser das ich noch Zahlen über 70000 eingeben kann und das script Zahlen bis 79999 an mein c Programm übergibt. Wie kann ich das jetzt noch unterbinden?
 
A

Anonymous

Gast
versuchs mal etwas einfacher
Code:
#!/bin/bash

MINIMUM=0
MAXIMUM=70000
typeset -i i

read -p "Bitte geben Sie jetzt ihren Parameter ein: " i REST_BEI_MEHRFACHEINGABE
if [ $i -le $MAXIMUM -a $i -ge $MINIMUM ]
then
  echo "hier kommt dein Programm mit Parameter $i"
else
  echo "du Depp nur zwischen $MINIMUM und $MAXIMUM"
fi
Keine oder eine komplett falsche Eingabe führt allerdings dabei zu "0"


robi
 
Perfekt. Vielen Dank! Aber ich merke ich muss mich noch viel mehr mit der Shell-Programmierung auseinandersetzen.
 
Ich denke, die Zahlenprüfung solltest Du vielleicht besser in Deinem C-Programm durchführen.
Es ist es ja eher das C-Programm, das die Zahlen so nicht haben will, nicht das Shell-Skript ...
 
Oben