[Primipassi] Shell script da (un altro) niubbo
peterpunk
peterpunk@email.it
Gio 26 Ago 2004 14:42:49 CEST
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Simone Ballerini scriveva:
> peterpunk wrote:
> ...
> >
> > if [[ "$SPEED" -gt 32 || "$SPEED" -lt 0 ]]; then
> > Messaggio di errore
> > D'accapo
> > fi
> >
> ...
>
> Il programma test funziona con singole parentesi quadre e non
> doppie. L'or logico si in dica con -o e non ||. Infine prova a
> mettere le doppie virgolette anche intorno alla cifra di
> comparazione.
>
No, qui ti sbagli :( ! ...
[[ $SPEED -gt 32 || $SPEED -lt 0 ]]
[ $SPEED -gt 32 ] || [ $SPEED -lt 0 ]
[ $SPEED -gt 32 -o $SPEED -lt 0 ]
sono forme assolutamente equivalenti, ed ho scoperto tra l'altro che
le virgolette *non* sono necessarie.
Scusa, leggi un po' qui:
http://it.tldp.org/guide/abs/operations.html
Me l'hai indicata tu, questa fonte!
P.S.: Un altro modo valido sarebbe stato il seguente:
case $SPEED in
[0-9] ) TEST="OK";;
esac
if [[ $SPEED -gt 32 || $SPEED -lt 0 || $TEST != OK ]]; then
Messaggio di errore
D'accapo
fi
Ciao,
peterpunk
- --
"Questo mondo non vi piace? Arruolatevi!"
G. L. Ferretti
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
iD8DBQFBLdrJEcec8u6D3CYRAmiSAJ4lmTufu92KshVLVxj3fjwmlfxrFQCePeMt
BL8WKWAZEK9L1pmVb1mQxc8=
=GO6E
-----END PGP SIGNATURE-----
Maggiori informazioni sulla lista
primipassi