[Tech] Bash ed espressioni booleane

Sergio Ballestrero s.ballestrero@c-sistemi.it
Gio 7 Set 2000 09:43:41 CEST


On Thu, 31 Aug 2000, Claudio Cicali wrote:

> At 03:30 AM 8/31/00 +0200, you wrote:
> >Devo controllare i parametri di input di uno script, ma mi sto un po'
> >"annodando" con la grammatica booleana di Bash, soprattutto per il fatto
> >che gli operatori AND ed OR hanno pari precedenza. Quello che vorrei
> >ottenere č questo (scritto in notazione "canonica"):
> >
> >if [$#=3] and ([$1='-txt'] or [$1='-html']) and [-f $2] and [$2!=$3]
> >     then "fai qualcosa"
> >
> >Io avevo provato con questo:
> >
> >if [ $1 = '-txt' ] || [ $1 = '-html' ] && [ $# = 3 ] && [ -f $2 ] && [
> >$2 != $3 ]
> >     then "fai qualcosa"

if [ $# = 3 ] \
   && { [ "$1" = '-txt' ] || [ "$1" = '-html' ] } \
   && [ -f "$2" ] \
   && [ "$2" != "$3" ] ; then
    echo ok
   else
    echo failed
fi

 il trucco sono le graffe :-)
 e soprattutto esiste un ottimo getopt :-))

 Sergio 

--------------------------------------------------------------------------
 Things will get better despite             Sergio Ballestrero
our efforts to improve them.                  Sergio.Ballestrero@cern.ch
	-- Will Rogers                             S.Ballestrero@iname.com






Maggiori informazioni sulla lista flug-tech