[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