[Cascavel-pm] recuperar retorno da execução de um comando

Igor Sutton igor.sutton em gmail.com
Terça Setembro 5 12:27:42 PDT 2006


> Oi Juliano
>
> Existe algum modulo Perl que chama um comando externo e consiga recuperar
> > o retorno da execução?
> >
>
> Sim, backticks:
>
> my $output = `/bin/ls`;
> print $output;
>
> Creio que para melhor legibilidade deva usar qx//:
>
> my $output = qx(/bin/ls);
> print $output;
>

Existe também a possibilidade de utilizar a função open() para isso, caso
você queira ler a saída do programa linha a linha:

open my $cmd, "ls|" or die $!;
while (<$cmd>) {
   chomp;
   print ">> $_\n";
}
close $cmd or warn $!;

Também existem os módulos IPC::Open2 e IPC::Open3. Deixo como exercício você
consultar o CPAN à procura destes módulos.

-- 
Igor Sutton Lopes
t: +55 51 9627.0779
e: igor.sutton em gmail.com
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20060905/2302564b/attachment.html 


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