shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] case e shift


From: Guilherme Gall
Subject: Re: [shell-script] case e shift
Date: Sat, 3 Jan 2009 11:57:35 -0200

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Desculpem sair do assunto da thread, mas o que diferencia comparação
de strings de comparação de números não é o uso das aspas e sim o uso
de diferentes operadores de comparação.

Dê uma olhada em http://aurelio.net/shell/canivete.html#test para ver
os diferentes operadores.

Quanto ao uso das aspas: nesse caso específico (ver se o número de
parâmetros é maior que zero), não faz diferença usar ou não, mas em
geral é uma boa prática proteger as variáveis com aspas. Exemplo
adaptado do livro Shell Script Profissional do Aurélio:

$ nome="Maria Silva"
$ test $nome = maria && echo verdadeiro || echo falso
bash: test: too many arguments
falso
$ test "$nome" = maria && echo verdadeiro || echo falso
falso

Perceba que o erro gerado pelo não uso de aspas no meio de um script
grande pode ser difícil de detectar.

Saudações,
- --
Guilherme Magalhães Gall (GMGall)
GPG Public Key ID: 0F498058

2009/1/3 Elder Marco :
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: http://getfiregpg.org

iEYEARECAAYFAklfcJkACgkQZV3qXg9JgFhLIgCgrb7cMIDHpof72thjvgMPNvVc
NPkAoIHenLwaXEhKXQeSlMQ7IHLo1pif
=10IH
-----END PGP SIGNATURE-----

[...]
> Observe que eu retirei as aspas do $# e do 0 porque nesse caso, se não me
> engano, você estaria comparando strings e não números.
[...]


reply via email to

[Prev in Thread] Current Thread [Next in Thread]