[Cascavel-pm] RES: recuperar retorno da execução de um comando
Paola Montini
PMontini em ymf.com.br
Terça Setembro 5 12:29:42 PDT 2006
Juliano,
Não sei se isso irá ajudá-lo, ou se é realmente aquilo de que precisa. Segue em anexo duas pequenas sub rotinas a execcmd, faz a execução de um comando qualquer no shell.... e a showerrror retorna mensagens de erros caso exista.
Vc precisa passar dois parâmetros para execcmd . A linha de comando que quer executar e o tipo de retorno que deseja sendo (0) o retorno em código e (1) o retorno em mensagem , esse retorno (1) é bom caso queira capturar o resultado do comando ls por exemplo.
PS: Não é necessário modulos do PERL para esse função.
#!usr/bin/perl
sub showerror
{
print $_[0] . "\n";
print $_[1] . "\n";
print $_[2] . "\n";
}
sub execcmd
{
$cmdline = $_[0];
$returnmsg = $_[1];
$resultmsg = `$cmdline`; -- Executa a linha de comando
$exitcode = $? >>8 ; -- Retorna o código de erro
$errormsg = "$!"; -- Retorna a mensagem de erro
print $resultmsg;
if((!$exitcode eq 0))
{
showerror("Erro executando:$cmdline",$errormsg,$resultmsg);
}
if ($returnmsg eq 1){
return $resultmsg;
}
else {
return $exitcode;
}
}
*Paola Montini
YMF-Consultoria
Fone: 5010-9220
-----Mensagem original-----
De: cascavel-pm-bounces+pmontini=ymf.com.br em pm.org [mailto:cascavel-pm-bounces+pmontini=ymf.com.br em pm.org]Em nome de Juliano Dantas
Enviada em: terça-feira, 5 de setembro de 2006 16:22
Para: cascavel-pm em pm.org
Assunto: [Cascavel-pm] recuperar retorno da execução de um comando
Caros Monges, boa tarde.
Existe algum modulo Perl que chama um comando externo e consiga recuperar o retorno da execução?
Eu pensei em utilizar o system e o fork, porém, não obtive sucesso.
Ele simplesmente retorna o valor do "return Code", eu queria que ele retornasse a execução do comando externo.
Abraços a todos
--
Juliano Dantas Almeida Silva
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20060905/4b09639f/attachment.html
Mais detalhes sobre a lista de discussão Cascavel-pm