Nossa! Espero nunca trabalhar com terminais 3270/IBM. Eles parecem 'perigosos' ...
2014-04-18 15:22 GMT-03:00 Marcio - Google <[email protected]>: > Acredito que ele esteja interagindo com um terminal 3270/IBM Mainframe ... > esse assunto já rolou a um tempo atrás, iniciado por mim, houve bastante > colaboração. Não conclui o projeto, mas no histórico tem coisas > interessantes. > > Não consigo ajuda-lo porque estou praticamente sedado a alguns meses, > desculpe. > > Fred, poste pelo menos um bloco completo (relevante ao assunto) do código > que o pessoal conseguirá ajudar mais. > > [...]'s > > Marcio > > ======================================== > ########### Campanha Ajude o Marcio! ########### > http://sosmarcio.blogspot.com.br/ > http://www.vakinha.com.br/VaquinhaP.aspx?e=195793 > ======================================== > Em 18/04/2014 10:34, "Tiago Peczenyj" <[email protected]> escreveu: > > Isso eu sei, só queria entender de onde saiu o " devemos evitar " >> Em 18/04/2014 11:25, "Leonardo Ruoso" <[email protected]> escreveu: >> >>> Em 18 de abril de 2014 11:14, Tiago Peczenyj >>> <[email protected]>escreveu: >>> >>>> What? >>>> >>> >>> *given, when and ~~ * >>> >>> >>>> Em 18/04/2014 10:58, "Vinícius Miasato" <[email protected]> >>>> escreveu: >>>> >>>> Opa, >>>>> >>>>> given não deveria ser evitado? Aliás não precisamos de given at all, >>>>> certo? >>>>> >>>>> atenciosamente, >>>>> Vinícius Miasato >>>>> Em 17/04/2014 17:41, "Tiago Peczenyj" <[email protected]> >>>>> escreveu: >>>>> >>>>>> se o cara vai ler da stdin ( e estamos admitindo que o cara fez um >>>>>> pipe para o script ) ok, mas o Expect te dá apenas a opção de controlar o >>>>>> timeout com processo como também é bidirecional. >>>>>> >>>>>> sem saber mais detalhes fica impossivel ajudar. >>>>>> >>>>>> 2014-04-17 17:33 GMT-03:00 Daniel de Oliveira Mantovani < >>>>>> [email protected]>: >>>>>> >>>>>>> Oxi, você pode fazer isso sem usar expected.... >>>>>>> >>>>>>> given(<STDIN>) { >>>>>>> >>>>>>> } >>>>>>> >>>>>>> 2014-04-17 17:31 GMT-03:00 Frederico Melo <[email protected]>: >>>>>>> > Oi Daniel, >>>>>>> > >>>>>>> > Preciso do expect pois vou interagir com o servidor. E analiso o >>>>>>> que esse >>>>>>> > servidor escreve em uma tela para tomar a decisão do próximo >>>>>>> passo... >>>>>>> > >>>>>>> > A estrutura que você sugeriu é legal mas, acho que só interagindo >>>>>>> dentro do >>>>>>> > perl. >>>>>>> > >>>>>>> > Obrigado, >>>>>>> > >>>>>>> > >>>>>>> > 2014-04-17 17:17 GMT-03:00 Daniel de Oliveira Mantovani >>>>>>> > <[email protected]>: >>>>>>> > >>>>>>> >> Porque você quer usar expected ? (Seja lá o que esse método que >>>>>>> você >>>>>>> >> não especificou de onda venha faz). >>>>>>> >> >>>>>>> >> given ($text) { >>>>>>> >> obj() when /OBJETIVO/; >>>>>>> >> consulta() when /CONSULTA/; >>>>>>> >> } >>>>>>> >> >>>>>>> >> 2014-04-17 17:01 GMT-03:00 Tiago Peczenyj < >>>>>>> [email protected]>: >>>>>>> >> > nunca usei assim mas baseado neste documento: >>>>>>> >> > >>>>>>> >> > http://search.cpan.org/~rgiersig/Expect-1.15/Expect.pod >>>>>>> >> > >>>>>>> >> > vc teria que usar o exp_continue no fim de cada subrotina. >>>>>>> >> > >>>>>>> >> > >>>>>>> >> > 2014-04-17 16:58 GMT-03:00 Frederico Melo <[email protected]>: >>>>>>> >> >> >>>>>>> >> >> Monges! Socorro! >>>>>>> >> >> Sou bem limitado na programação em perl mas estou evoluindo >>>>>>> com o >>>>>>> >> >> tempo. >>>>>>> >> >> Então desculpem pelas minhas dúvidas que para vocês, pode ser >>>>>>> muito >>>>>>> >> >> simples... >>>>>>> >> >> >>>>>>> >> >> Bom, estou utilizando expect com perl e analiso alguns outputs >>>>>>> de um >>>>>>> >> >> servidor, em forma texto, que devo analisar e, dependendo da >>>>>>> ocorrência >>>>>>> >> >> de >>>>>>> >> >> uma string, devo disparar uma determinada sub-rotina para >>>>>>> tratativas >>>>>>> >> >> específicas. >>>>>>> >> >> >>>>>>> >> >> Ex.: se aparecer a string CONSULTA, devo disparar a subrotina >>>>>>> >> >> consulta() >>>>>>> >> >> Se aparecer a string OBJETIVO, devo disparar a subrotina obj() >>>>>>> e assim >>>>>>> >> >> por >>>>>>> >> >> diante. >>>>>>> >> >> >>>>>>> >> >> O output do servidor é verificado pelo expect e, no momento >>>>>>> que devo >>>>>>> >> >> tomar >>>>>>> >> >> a decisão, a tela do output é apenas uma, com apenas uma das >>>>>>> >> >> ocorrências >>>>>>> >> >> abaixo. >>>>>>> >> >> >>>>>>> >> >> Para verificar isso, estruturei o código .pl assim: >>>>>>> >> >> >>>>>>> >> >> $exp->expect(2, >>>>>>> >> >> >>>>>>> >> >> [ qr/SELECIONE/ => \&select()], >>>>>>> >> >> >>>>>>> >> >> [ qr/OBJETIVO/ => \&obj()], >>>>>>> >> >> >>>>>>> >> >> [ qr/AGUARDE/ => \&sai_6()], >>>>>>> >> >> >>>>>>> >> >> [ qr/CONSULTA/ => \&consulta()], >>>>>>> >> >> >>>>>>> >> >> [ timeout => \&cancela() ], >>>>>>> >> >> >>>>>>> >> >> ); >>>>>>> >> >> >>>>>>> >> >> Ou seja, no meu entendimento limitado, quero que o expect >>>>>>> dispare uma >>>>>>> >> >> das >>>>>>> >> >> subs acima dependendo da string que ele encontrar no output do >>>>>>> >> >> servidor. >>>>>>> >> >> >>>>>>> >> >> Acredito que a estrutura acima, que parece uma matriz >>>>>>> (desculpem a >>>>>>> >> >> ignorância), vai executar TODAS as subs independente do >>>>>>> conteúdo do >>>>>>> >> >> output >>>>>>> >> >> do servidor. >>>>>>> >> >> >>>>>>> >> >> O que está acontecendo é que o expect ou o perl só dispara a >>>>>>> primeira >>>>>>> >> >> sub... select()... independente da string encontrada... >>>>>>> >> >> >>>>>>> >> >> Sei que a condição para encontrar as strings funcionam pois, >>>>>>> fiz um >>>>>>> >> >> perl >>>>>>> >> >> com expect para cada condição acima e, quando rodo >>>>>>> individualmente cada >>>>>>> >> >> .pl, >>>>>>> >> >> funciona certo... o que estou errando? Como devo fazer o que >>>>>>> preciso? >>>>>>> >> >> >>>>>>> >> >> Por favor, ajudem! >>>>>>> >> >> >>>>>>> >> >> Muito obrigado, >>>>>>> >> >> Atte., >>>>>>> >> >> Frederico >>>>>>> >> >> >>>>>>> >> >> >>>>>>> >> >> =begin disclaimer >>>>>>> >> >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>>>> >> >> SaoPaulo-pm mailing list: [email protected] >>>>>>> >> >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>>>> >> >> =end disclaimer >>>>>>> >> >> >>>>>>> >> > >>>>>>> >> > >>>>>>> >> > >>>>>>> >> > -- >>>>>>> >> > Tiago B. Peczenyj >>>>>>> >> > Linux User #405772 >>>>>>> >> > >>>>>>> >> > http://about.me/peczenyj >>>>>>> >> > >>>>>>> >> > =begin disclaimer >>>>>>> >> > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>>>> >> > SaoPaulo-pm mailing list: [email protected] >>>>>>> >> > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>>>> >> > =end disclaimer >>>>>>> >> > >>>>>>> >> >>>>>>> >> >>>>>>> >> >>>>>>> >> -- >>>>>>> >> >>>>>>> >> -dom >>>>>>> >> >>>>>>> >> -- >>>>>>> >> >>>>>>> >> Daniel de Oliveira Mantovani >>>>>>> >> Business Analytic Specialist >>>>>>> >> Perl Evangelist /Astrophysics hobbyist. >>>>>>> >> +55 11 9 8538-9897 >>>>>>> >> XOXO >>>>>>> >> =begin disclaimer >>>>>>> >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>>>> >> SaoPaulo-pm mailing list: [email protected] >>>>>>> >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>>>> >> =end disclaimer >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>> > =begin disclaimer >>>>>>> > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>>>> > SaoPaulo-pm mailing list: [email protected] >>>>>>> > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>>>> > =end disclaimer >>>>>>> > >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> -dom >>>>>>> >>>>>>> -- >>>>>>> >>>>>>> Daniel de Oliveira Mantovani >>>>>>> Business Analytic Specialist >>>>>>> Perl Evangelist /Astrophysics hobbyist. >>>>>>> +55 11 9 8538-9897 >>>>>>> XOXO >>>>>>> =begin disclaimer >>>>>>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>>>> SaoPaulo-pm mailing list: [email protected] >>>>>>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>>>> =end disclaimer >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Tiago B. Peczenyj >>>>>> Linux User #405772 >>>>>> >>>>>> http://about.me/peczenyj >>>>>> >>>>>> =begin disclaimer >>>>>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>>> SaoPaulo-pm mailing list: [email protected] >>>>>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>>> =end disclaimer >>>>>> >>>>>> >>>>> =begin disclaimer >>>>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>>> SaoPaulo-pm mailing list: [email protected] >>>>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>>> =end disclaimer >>>>> >>>>> >>>> =begin disclaimer >>>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>>> SaoPaulo-pm mailing list: [email protected] >>>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>>> =end disclaimer >>>> >>>> >>> >>> >>> -- >>> Leonardo Ruoso >>> Journalist, Perl developer and business consultant >>> Media, UFC/2006; Telecom, IFCE/1998 >>> >>> =begin disclaimer >>> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >>> SaoPaulo-pm mailing list: [email protected] >>> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >>> =end disclaimer >>> >>> >> =begin disclaimer >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >> SaoPaulo-pm mailing list: [email protected] >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >> =end disclaimer >> >> > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: [email protected] > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > > -- André Garcia Carneiro Software Engineer (11)982907780
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: [email protected] L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer
