Hat ezt sem lattam meg ilyen bonyolultan megvalositva. Egyebkent amit stra mondott, az lesz a megoldasod.
De ha nem haragszol, adnek par tippet, mert borzasztoan nez ki a kodod, es nem csak azert mert hianyzik a formazas itt hupon:
1) shell functionnek lehet parametert adni, akkor nem kell kornyezeti valtozokkal szorakozni, es maris szebben nez ki igy:
HH=$(number_control 1 12 ${HH})
2) regexpek erre a celra agyuval verebre. shell glob is megteszi:
Pl:
case ${HH} in
[01][0-9]|2[0-4])
echo 00-24
;;
*)
# itt akkor most hiba van. ouch.
;;
esac
Szerintem ez egyszerubb & attekinthetobb mint a regexpes moka.
3) Hibat en rogton akkor dobnek amikor felmerul. Akkor nem kell error_level dologgal szorakozni (amit nem teljesen ertek, mert nem is olvastam el mit csinal :P), hanem rogton hanyatt veti magat a program es bevallja, hogy hat itt biza gond van. Megpedig ez-meg-ez.
Szvsz baratsagosabb. Es atlathatobb is, mert a hiba rogton ott jelentkezik, ahol elojon, nem valamikor kesobb.
Elso olvasatra ennyi bokte a csorom. :P