Está dando erro num "echo" !? Acho dificil que seja ai o problema.
Tenta colocar as variáveis assim ${descricao} ${ip} ${mac} e outra dica, ao invés de usar ` ` quando for usar um comando, use $() é mais fácil para a leitura. Acho que li isso no livro do Aurélio =) Eu percebi que vc usou as 2 maneiras.. mas tenta usar só a $() . Em 28 de março de 2010 17:42, Isaac Sampaio <xiss_br...@yahoo.com.br>escreveu: > > > Olá professor Julio, fico grato pela sua sempre permanente paciência em > ensinar. Fiz varias modificações mas mesmo assim não funcionou. Ficando > assim: > > > while : ; do > [ -s "$lista_ipxmac" ] || echo "descricao|ip|mac" >> $lista_ipxmac > resposta3=$( dialog --stdout --title "$rotulo" --ok-label 'Adicionar' > --extra-button --extra-label 'Editar' \ > --cancel-label 'Voltar' --menu '' 0 60 0 \ > $(for loop_ipxmac in `cat $lista_ipxmac`; do > descricao=`echo "$loop_ipxmac" | awk -F "|" '{print $1}'` > ip=`echo "$loop_ipxmac" | awk -F "|" '{print $2}'` > mac=`echo "$loop_ipxmac" | awk -F "|" '{print $3}'` > echo "$descricao $ip $mac" dá erro aqui > done)) > > Coloquei a $loop_ipxmac entre aspas conforme orientou, mas o resultado é o > mesmo. Testei a variavel $lista_ipxmac com um echo e conteudo dela esta > correto sendo: > > descricao|ip|mac > > Porém no ultimo echo do laço se coloco apenas 2 variaveis funciona, mas se > coloco 3 a mensagem volta, pensei que talves pudesse ser a "descricao" que > não estava presente na variavel $loop_ipxmac, mas esta tudo certo, porque se > eu coloco no ultimo echo: > > echo "$descricao" dá erro. > echo "$descricao $ip" funciona > echo "$descricao $ip $mac" dá erro (essa ultima que quero que funcione) > > Abraços > > ________________________________ > De: Julio C. Neves <julio.ne...@gmail.com <julio.neves%40gmail.com>> > Para: shell-script@yahoogrupos.com.br <shell-script%40yahoogrupos.com.br> > Enviadas: Domingo, 28 de Março de 2010 15:59:56 > Assunto: Re: [shell-script] Error: Expected 2 arguments, found only 1. > > > Fala Isaac, > acho que seu problema está no conteúdo da variável $list_ipxmac. Qdo vc > faz: > > descricaoOfList=`echo $list_ipxmac | awk -F "|" '{print $1}'` > > Antes do echo o shell faz a substituição de variáveis e após esta fase, a > linha que seria executada seria: > > descricaoOfList=`echo descricao|ip|mac | awk -F "|" '{print $1}'` > > Ou seja, vc está fazendo um echo para o prg ip (que existe) e este mandaria > a saída (não manda pq os argumentos recebidos pela entrada primária > (descrição) estão furados e a linha aborta) para o prg mac (que não > existe). > > Para consertar isso, use sempre a variável $list_ipxmac entre aspas > > OBS: A partir de amanhã, darei um curso de shell em SP (4Linux) no qual vcs > podem se inscrever na hora. Vou dar 20% de abatimento para quem for da > lista. Mas atenção! Este abatimento valerá somente para este > treinamento. Por favor quem for da lista e estiver no curso, se apresente. > Conheço todos de nome e quase ninguém pessoalmente. > > Abraços, > Julio > Cursos de Shell e Zenity em 2 fins de semana? > - SP turma de Shell em 29/03 - ligue (11)2125-4747; > - Floripa turma Shell 12/04 http://www.seventreinamentos.com.br; > - DF turma de Shell em 17/04 - ligue (61) 3223-3000; > - Aracaju turma de Shell em 12/05 - > andersonriz...@gmail.com<andersonrizada%40gmail.com> > ; > - RJ turma de Shell em 14/06 - ligue (21)2210-6061; > - Turmas fechadas em outras cidades ligue (21) 8112-9988. > > Em 28 de março de 2010 10:57, Isaac Sampaio > <xiss_br...@yahoo.com.br<xiss_break%40yahoo.com.br> > >escreveu: > > > > > > > Olá amigos, estou tendo algumas dificuldades para fazer isso aqui > > funcionar, pois quando executo a função que tem essa parte de codigo gera > o > > erro: > > > > while : ; do > > [ -s "$lista_ipxmac" ] || echo "descricao|ip|mac" >> $lista_ipxmac > > resposta3=$( dialog --stdout --title "$rotulo" --ok-label 'Adicionar' > > --extra-button --extra-label 'Editar' \ > > --cancel-label 'Voltar' --menu '' 0 90 0 \ > > $(for list_ipxmac in `cat $lista_ipxmac`; do > > descricaoOfList=`echo $list_ipxmac | awk -F "|" '{print $1}'` > > ipOfList=`echo $list_ipxmac | awk -F "|" '{print $2}'` > > macOfList=`echo $list_ipxmac | awk -F "|" '{print $3}'` > > echo "$descricaoOfList $ipOfList $macOfList" > > done)) > > > > A variavel $lista_ipxmac, armazena o caminho pra um arquivo que contem o > > seguinte conteudo: > > > > DESCRICAO|IP|MAC > > > > Vejo que o problema esta nos argumentos passados porque se eu retiro do > > echo 1 dos argumentos o erro desaparece, mas eu não sei como resolver > este > > problema, por isso peço a ajuda de vocês que tem uma experiencia > > infinitamente maior que a minha nesse assunto. > > > > Obrigado a todos. > > > > __________________________________________________________ > > Veja quais são os assuntos do momento no Yahoo! +Buscados > > http://br.maisbuscados.yahoo.com > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > ------------------------------------ > > ---------------------------------------------------------- > 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: > shell-script-unsubscr...@yahoogrupos.com.br<shell-script-unsubscribe%40yahoogrupos.com.br> > ---------------------------------------------------------- > 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 > > __________________________________________________________ > Veja quais são os assuntos do momento no Yahoo! +Buscados > http://br.maisbuscados.yahoo.com > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas] ------------------------------------ --------------------------------------------------------------------- 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: shell-script-unsubscr...@yahoogrupos.com.br --------------------------------------------------------------------- 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 <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/shell-script/ <*> Para sair deste grupo, envie um e-mail para: shell-script-unsubscr...@yahoogrupos.com.br <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html