[linux-l] Bash und Testkonstrukte
Raimond Alfier
alfier at zedat.fu-berlin.de
Fr Jul 2 14:16:01 CEST 2004
Hallo Sven, hier ein ... von hinten durch die Brust .........ins
Auge....
Es basiert auf dem "typeset -i"
Du musst aber noch mal alles austesten ......Viel Spass
Raimond
#! /bin/bash
typeset -i ihelp i
VARIABLE=0
ihelp="$VARIABLE"
i=$ihelp
chelp=$ihelp
echo "ihelp $ihelp"
echo "chelp $chelp"
echo "VARIABLE $VARIABLE"
if [[ "$chelp" == "$VARIABLE" ]] ; then
while [ "$VARIABLE" -lt "$i" ]; do
echo i $i mach_irgendwas
#...
ihelp="$VARIABLE"
chelp=$ihelp
if [[ "$chelp" || "$VARIABLE" ]] ; then
echo i $i hier der andere non integer -- Weg
fi
((i--))
done
else
echo hier der andere / NoN integer Weg
fi
echo "ihelp $ihelp"
echo "chelp $chelp"
echo "VARIABLE $VARIABLE"
On Tue, 29 Jun 2004, Sven 'Rae the Git' Grounsell wrote:
> Hi Liste,
>
> folgendes Problem:
> die Bash wirft nen Fehler, wenn folgendes Konstrukt auftritt:
>
> ####################
> VARIABLE=$irgendein_nichtZahl_AsciiZeichen
> while [ "$VARIABLE" -lt "4" ]; do
> mach_irgendwas
> done
> ####################
>
> Fehler (VARIABLE="q"):
> bash: [: q: integer expression expected
>
> Logisch, q ist kein integer-Wert.
> Aber es wirft die Frage auf, wie ich das abfangen kann (bei if gibts
> natuerlich dasselbe Problem, da auch hier [ zum einsatz kommt).
> Sprich, gibt es eine Moeglichkeit in Bash vorab zu testen, ob eine
> Variable einen integer-Wert enthaelt, bzw nicht enthaelt?
>
> Bin fuer jeden Tip dankbar.
>
> Gruss
> Sven
>
> --
> http://www.tuxhilfe.de/
> sven at tuxhilfe dot de
> _______________________________________________
> linux-l mailing list
> linux-l at mlists.in-berlin.de
> Die Mailingliste der BeLUG (Berliner Linux User Group)
>
> Wenn du diese Mailingliste abbestellen willst, gehe bitte auf
> https://mlists.in-berlin.de/mailman/listinfo/linux-l
> und trage dich dort bitte aus
>
Mehr Informationen über die Mailingliste linux-l