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

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

Re: [shell-script] too many arguments


From: Tia
Subject: Re: [shell-script] too many arguments
Date: Tue, 22 Feb 2005 10:09:02 -0300
User-agent: KMail/1.7.1

Bacana!!!

Testei e rolow certinho.

Valeu pela força

[]'s

Tia


Em Terça 22 Fevereiro 2005 09:16, Fernando Lemes da Silva escreveu:

    Tia,

    too many arguments = muitos argumentos

    Quando voce roda um comando com as crases e este comando retorna 
várias palavras (eg. "o rato roeu a roupa do rei de roma") acontece o 
seguinte:

    [ -z o rato roeu a roupa do rei de roma ]

    Ou seja, o -z vai verificar se o argumento seguinte é vazio. Em 
seguinda ele irá ver que o argumento seguinte é 'o', que torna a 
condição verdadeira. Depois ele vai analisar o que vem depois: rato? 
Este argumento não era esperado (talvez um -a ou -o fosse)...

    Enfim, para resolver o problema coloque aspas em volta das crases. 
Isso fará com que a saida das crases seja um único argumento. Assim 
depois do comando ser executado o if ficaria assim:

    [ -z "o rato roeu a roupa do rei de roma" ]

    []'s


    /**********************************************
         _     Fernando Lemes da Silva
        °v°    www.koho.com.br
       /(¡)\   Linux user #address@hidden
        ^ ^    lICQ UIN 2371843
    echo 396752965710071000896145190854552842P | dc
    **********************************************/


Tia wrote:
> Salve galera das conchas, 
> Fiz esse if abaixo e estou tento um erro de too many arguments,
> não sei o que está errado..
> O programa funciona, mesmo com esse erro, mas, para efeitos
> ditaticos, se alguem puder me dar uma luz, ficaria grato.
> PS. o IP está entre 2 apostrofos.
> Segue abaixo o if e suas respostas:
> ~$  if [ -z `host merda.com |grep ''64.239.78.46'';` ];
>>  then
>>   echo "nada de merda"
>>  else
>>   echo "achei merda"
>> fi
> bash: [: too many arguments
> achei merda
> ~$
> ~$  if [ -z `host merda.com |grep ''164.239.78.46'';` ];   then    echo "nada 
> de merda";   else    echo "achei merda" ;  fi
> nada de merda
> ~$
> []'s
> Tia



---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
 
Links do Yahoo! Grupos




 







reply via email to

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