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

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

Re: [shell-script] Outra opção para $*


From: Flavio Junior
Subject: Re: [shell-script] Outra opção para $*
Date: Mon, 16 Feb 2009 15:11:23 -0300

???

[root@hank ~]# cat teste1.sh
#!/bin/bash
./teste2.sh "$@"
[root@hank ~]# cat teste2.sh
#!/bin/bash
echo 1 - $1
echo 2 - $2
[root@hank ~]# ./teste1.sh teste "teste com espaco"
1 - teste
2 - teste com espaco


--

Flávio do Carmo Júnior aka waKKu

2009/2/16 Thomaz de Oliveira dos Reis <address@hidden>:
> Não funcionou....
>
> 2009/2/16 Flavio Junior <address@hidden>:
>
>> use o $@ inves do $* ....
>>
>> --
>>
>> Flávio do Carmo Júnior aka waKKu
>>
>> 2009/2/16 Thomaz de Oliveira dos Reis <address@hidden>:
>>> Bem achei uma "solução" um tanto quanto feia..... funciona mas não é
>>> muito.. "elegante"....
>>>
>>> eu alteraria teste1.sh para conter:
>>>
>>> PARAMETROS=""
>>> while [ $# != 0 ]
>>> do
>>> PARAMETROS="$PARAMETROS \"$1\""
>>> shift
>>> done
>>>
>>> eval ./teste2.sh $PARAMETROS
>>>
>>> mas tenho certeza que existe uma solução mais simples pra isso...
>>>
>>> 2009/2/16 Thomaz de Oliveira dos Reis <address@hidden>:
>>>
>>>> isso não resolve, pois em teste2.sh a palavra parametro já se encontra
>>>> em $3, $2 no caso tem apenas o "segundo"
>>>>
>>>> 2009/2/16 Victor Hugo Leite <address@hidden>:
>>>>> Teste usando aspas no echo.
>>>>>
>>>>> Ex:
>>>>>
>>>>> echo "$1"
>>>>> echo "$2"
>>>>>
>>>>> []'s
>>>>>
>>>>> 2009/2/16 Thomaz de Oliveira dos Reis <address@hidden>
>>>>>
>>>>>> Olá a todos!
>>>>>>
>>>>>> Eu lembro de ter estudado isso no curso com o Julio mas eu juro que me
>>>>>> esqueci qual era a solução...(e não achei no infeliz do google e o
>>>>>> livro está emprestado a um amigo)
>>>>>>
>>>>>> O problema é simples:
>>>>>>
>>>>>> tenho teste1.sh com o seguinte:
>>>>>>
>>>>>> ./teste2.sh $*
>>>>>>
>>>>>> e tenho teste2.sh com o seguinte:
>>>>>>
>>>>>> echo $1
>>>>>> echo $2
>>>>>>
>>>>>>
>>>>>> se eu chamar teste1.sh da seguinte forma:
>>>>>>
>>>>>> ./teste1.sh Primero "segundo parametro"
>>>>>>
>>>>>> ele vai imprimir apenas:
>>>>>>
>>>>>> primeiro
>>>>>> segundo
>>>>>>
>>>>>> pois o shell vai primeiro resolver o $* para depois mandar pro segundo
>>>>>> script, fazendo com que mande para o segundo ./teste2.sh primeiro
>>>>>> segundo parametro (sem as ")
>>>>>>
>>>>>> Eu lembro que existia uma solução que funcionava bem para este
>>>>>> problema...
>>>>>>
>>>>>> alguém tem a luz?
>>>>>>
>>>>>> abraços!
>>>>>>
>>>>>>
>>>>>> ------------------------------------
>>>>>>
>>>>>> ----------------------------------------------------------
>>>>>> 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
>>>>>> ----------------------------------------------------------
>>>>>> Servidor Newsgroup da lista: news.gmane.org
>>>>>> Grupo: gmane.org.user-groups.programming.shell.brazil
>>>>>>
>>>>>> Links do Yahoo! Grupos
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> [As partes desta mensagem que não continham texto foram removidas]
>>>>>
>>>>>
>>>>
>>>
>>
> 


reply via email to

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