[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