[Rio-pm] Perl Realtime Debug

breno breno em rio.pm.org
Quarta Setembro 14 08:29:39 PDT 2011


2011/9/14 Thiago Jose Lucas <thiagojlucas em gmail.com>:
> Pessoal, bom dia,
>
>     Sou iniciante em Perl e tenho uma dúvida. Quando queremos "ver" a
> execução (debug realtime) de um shellscript, usamos a opção "sh -x", preciso
> fazer o mesmo com uma rotina em perl que tenho aqui, para entendê-la.
>     Alguém sabe me dizer se há como fazer isso, ou se essa é a melhor
> maneira?
>
>     PS.: Tentei usar o "perl -d", mas gostaria que não houvesse interação
> (next, next)...
>

Olá,

para usar o depurador perl em modo não-interativo, basta usar a opção
"NonStop". Você pode então combiná-la com qualquer outra para atingir
o grau de informação que precisa. Por exemplo:

     PERLDB_OPTS="NonStop AutoTrace" perl -d meuprograma.pl

     PERLDB_OPTS="NonStop frame=2" perl -d meuprograma.pl

etc.

Veja "Configurable Options" em "perldoc perldebug", ou diretamente via web:

http://perldoc.perl.org/perldebug.html#Configurable-Options

Agora é minha vez de perguntar: se você é um iniciante em Perl, o que
está fazendo manipulando o depurador? O que está fazendo que (acha
que) precisa ver a execução em realtime do seu programa? Pergunto isso
porque a maioria dos iniciantes passam anos sem precisar sequer tocar
no debugger, o que me leva a suspeitar que algo não está certo com a
sua abordagem. Por que não explica pra gente o que você está tentando
fazer, e a gente tenta te explicar a melhor forma de fazer em Perl?

[]s

-b


Mais detalhes sobre a lista de discussão Rio-pm