[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