Hey Sr. Carlos, <tentando advinhar...> pelo log que você passou, parece que o seu script principal está passando os parâmetros de forma errônea para o script expect:
> login: usuariosenhaORACLE_SID=sid_do_bancoasqlplus //dev/pts/3: 3004-038 Por acaso, os dados na frente de "login: " não seriam exatamente o que você estava passando como parâmetro, porém concatenados? Bem, em primeiro lugar, eu tentaria executar o script expect manualmente, garantindo que o mesmo está correto. Em seguida, verificaria como ele está sendo chamado pelo script principal. Aproveitando, uma dica (na verdade não tenho certeza se é necessário; apesar de cair mais no expect, talvez fugindo de escopo, alguém da poderia corrigir caso esteja incorreto): nos comandos de "send" do expect, acredito que você precisa enviar também o '\r', simulando o seu "Enter" após preenchimento do campo, como em: > send "$user\r" Hasta! jr. On Nov 7, 2007 9:14 AM, Carlos Ferreira <[EMAIL PROTECTED]> wrote: > Edjunior, > realmente o erro era o comentário na mesma linha, obrigado pela ajuda, mas > agora estou chegando até o login no telnet e a senha não é passada, fica > esperando a senha até que ele escreve todos os outros comandos na mesma > linha e cai. > o erro: > AIX Version 5 > (C) Copyrights by IBM and by others 1982, 2007. > login: usuariosenhaORACLE_SID=sid_do_bancoasqlplus //dev/pts/3: 3004-038 > Login timed out after 60 seconds. > > Connection closed by foreign host > > []s > > Carlos Ferreira > > Em 07/11/07, Edjunior Machado <[EMAIL PROTECTED]> escreveu: > > > > Hey Sr. Carlos, > > > > apesar de não ter muito know-how no assunto, creio que esse é um > > problema no seu script em expect. Procure eliminar os comentários de > > final de linha (as frases após '#') ou deixá-los em uma linha sem > > código. Por exemplo, tente substituir: > > > > set ip [lindex $argv 0] # primeiro argumento > > set user [lindex $argv 1] # segundo... etc > > > > por > > > > # primeiro argumento > > set ip [lindex $argv 0] > > # segundo... etc > > set user [lindex $argv 1] > > > > Espero ter ajudado. > > Hasta! > > > > jr. > > > > > > On Nov 7, 2007 8:15 AM, Carlos Ferreira <[EMAIL > > PROTECTED]<chlferreira%40gmail.com>> > > > wrote: > > > Tiago, > > > primeiramente obrigado pela ajuda, mas estou recebendo o seguinte erro: > > > wrong # args: should be "set varName ?newValue? > > > while executing > > > "set ip [lindex $argv 0] # primeiro argumento" > > > (file "./conexao" line 4) > > > > > > Meu código: > > > #!/bin/bash > > > # Programa para conectar e abrir sqlplus > > > # > > > > > > ######### INICIAR VARIAVEIS ############## > > > vl_arqconf=tnsnames.txt > > > vl_banco=`tr 'A-Z' 'a-z' <<< $1` > > > ######### FUNÇÔES ######################## > > > > > > > > > ######### INICIAR PROGRAMA ############### > > > > > > vl_ip=`cat $vl_arqconf | grep -i $vl_banco | cut -f2 -d\;` > > > echo $vl_ip > > > ./conexao ${vl_ip} USUARIO SENHA "ORACLE_SID=${vl_banco}a" > > > > > > ########## FIM DO PROGRAMA ############### > > > > > > #!/usr/bin/expect > > > set timeout 20 > > > > > > set ip [lindex $argv 0] # primeiro argumento > > > set user [lindex $argv 1] # segundo... etc > > > set password [lindex $argv 2] > > > set oracmd [lindex $argv 3] > > > > > > spawn telnet $ip # aqui ele 'pega' o telnet > > > > > > expect "login:" # aha, pediu o login? > > > send "$user " # toma o username do cara! > > > > > > expect "password:" # mesma coisa. > > > send "$password " # facil não? > > > > > > send "$oracmd" # agora aquele toque final > > > send "sqlplus /" > > > > > > interact # E aqui devolve a interação para o usuario > > > > > > []s > > > > > > Carlos Ferreira > > > > > > Em 06/11/07, Tiago Barcellos Peczenyj <[EMAIL > > > PROTECTED]<tiago.peczenyj%40gmail.com>> > > > escreveu: > > > > > > > > use Expect: > > > > > > > > Inspirado aqui: > > > > http://www.osix.net/modules/article/?id=30 > > > > > > > > #!/bin/bash > > > > vl_arqconf=tnsnames.txt > > > > vl_banco=`tr 'A-Z' 'a-z' <<< $1` > > > > > > > > vl_ip=`grep -i $vl_banco $vl_arqconf | cut -f2 -d\;` > > > > > > > > ./conexao ${vl_ip} usuario senha "ORACLE_SID=${vl_banco}a" > > > > > > > > script 'conexao' abaixo: > > > > #!/usr/bin/expect > > > > set timeout 20 > > > > > > > > set ip [lindex $argv 0] # primeiro argumento > > > > set user [lindex $argv 1] # segundo... etc > > > > set password [lindex $argv 2] > > > > set oracmd [lindex $argv 3] > > > > > > > > spawn telnet $ip # aqui ele 'pega' o telnet > > > > > > > > expect "login:" # aha, pediu o login? > > > > send "$user " # toma o username do cara! > > > > > > > > expect "assword:" # mesma coisa. > > > > send "$password " # facil não? > > > > > > > > send "$oracmd" # agora aquele toque final > > > > send "sqlplus /" > > > > > > > > interact # E aqui devolve a interação para o usuario > > > > On Nov 6, 2007 5:19 PM, Carlos Ferreira <[EMAIL > > > > PROTECTED]<chlferreira%40gmail.com> > > <chlferreira%40gmail.com>> > > > > wrote: > > > > > > > > > > Pessoal > > > > > estou com o seguinte problema, fiz o script abaixo dentro de um > > script > > > > > shell: > > > > > #!/bin/bash > > > > > # Programa para conectar e abrir sqlplus > > > > > # > > > > > > > > > > ######### INICIAR VARIAVEIS ############## > > > > > vl_arqconf=tnsnames.txt > > > > > vl_banco=`echo $1 | tr 'A-Z' 'a-z'` > > > > > > > > > > ######### INICIAR PROGRAMA ############### > > > > > vl_ip=`cat $vl_arqconf | grep -i $vl_banco | cut -f2 -d\;` > > > > > > > > > > (echo usuario; sleep 3; echo senha; sleep 3; echo > > > > > ORACLE_SID=${vl_banco}a; sleep 3; echo sqlplus /; sleep 3) | telnet > > > > > ${vl_ip} > > > > > > > > > > ####### fim do script ################### > > > > > > > > > > Acontece que eu queria que o script me deixasse o sqlplus aberto na > > > > > tela, mas isto não acontece, alguma sugestão? > > > > > > > > > > Desde ja agradeço a atenção de todos. > > > > > > > > > > []s > > > > > > > > > > Carlos Ferreira > > > > > > > > > > > > > > > > > > -- > > > > Tiago B Peczenyj > > > > Linux User #405772 > > > > > > > > http://peczenyj.blogspot.com/ > > > > "what does not kill us makes us stronger" > > > > > > > > > > > > > > > > > > > > -- > > > Carlos Ferreira > > > Analista de Desenvolvimento > > > Niterói - RJ - Brasil > > > LinuxUser #271002 > > > http://www.carnivorosemdentes.blogger.com.br/ > > > ================ > > > > > > > > > [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: [EMAIL > > > PROTECTED]<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 > > > > > > > > > > > > > > > > > > > -- > > Carlos Ferreira > Analista de Desenvolvimento > Niterói - RJ - Brasil > LinuxUser #271002 > http://www.carnivorosemdentes.blogger.com.br/ > ================ > > > [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: [EMAIL PROTECTED] > --------------------------------------------------------------------- > 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 > > >