• 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

Divine

Hacker
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
 
OP
Divine

Divine

Hacker
Perfekt. Vielen Dank! Aber ich merke ich muss mich noch viel mehr mit der Shell-Programmierung auseinandersetzen.
 

abgdf

Guru
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