Hi All,
Hab hier ein komplexeres Script und darin z.b: nen Part wie folgt,
echo -e "$green"
while true; do
read -p "how many EXTRA_PARTITIONS do you want to create ? " -n 1
case $REPLY in
[1-9]* ) EXTRA_PARTITIONS=$REPLY && echo -e "\nchosen was -> ${blue}$EXTRA_PARTITIONS${green}\n" && break;;
* ) echo -e "\n${yellow}please answer with numbers from 1 to 9.${green}\n";;
esac
done
Das funktioniert ja auch wunderbar, doch möchte ich das nun erweitern so das auch eine zweistellige Angabe möglich ist also in etwa so,
echo -e "$green"
while true; do
read -p "how many EXTRA_PARTITIONS do you want to create ? " #-n 2
case $REPLY in
[0-9]|[1-6]* ) EXTRA_PARTITIONS=$REPLY && echo -e "\nchosen was -> ${blue}$EXTRA_PARTITIONS${green}\n" && break;;
* ) echo -e "\n${yellow}please answer with numbers from 1 to 16.${green}\n";;
esac
done
Das klappt auch, doch so kann ich keine Limitierung haben also ich möchte ja nicht mehr als 16 Partitionen erlauben.
Bei dieser Variante kann ich ja leider auch z.b: 17 wählen, und leider geht das so auch nur mit nachfolgenden Druck auf die Enter Taste.
Ich hätte also gerne das man nur ne Zahl zwischen 1 - 16 wählen kann und sonst gar nix anderes angeben kann, und am Liebsten
auch noch ohne danach die Enter Taste drücken zu müssen.
So klappt das ja bei der obersten Variante, doch eben nur von 1 - 9.
Wenns dann nur mit z.b: von 01 - 16 klappt und ich so keine Enter Taste drücken muss wäre das auch ok, dann müsste ich danach
halt noch die führende Null löschen da das komplette Script etwas gross ist mittlerweile und von dieser Auswertung einiges abhängt
(müsste sonst wieder einiges mehr im Script ändern).
Hat jemand ne Idee ?
EDIT !
Also so ginge es fürs Erste,
echo -e "$green"
while true; do
read -p "how many EXTRA_PARTITIONS do you want to create ? " -n 2
case $REPLY in
[0][1-9]|[1][0-6]* ) EXTRA_PARTITIONS=$REPLY && echo -e "\nchosen was -> ${blue}$EXTRA_PARTITIONS${green}\n" && break;;
* ) echo -e "\n${yellow}please answer with numbers from 01 to 16.${green}\n";;
esac
done
Gäbe es ne schönere Lösung als mit führender Null und dennoch nicht die Enter Taste zu benötigen
(egal ob ein oder zweistellige Eingabe) ?
Gruss
Bert