Estoy con un programa Perl que una de sus tareas es ejecutar un programa Perl que se encuentra en otra máquina. Para ello he probado los siguientes comandos:
Using perl Syntax Highlighting
print "Executing = [rsh -n $computer_address perl $monitor_path/$script_name_cleaned]\n";
my $rsh_result = `rsh -n $computer_address perl $monitor_path/$perl_monitor_script`;
print "Resultado -> [$rsh_result] - [$?]]\n";
my $rsh_result2 = system("rsh","-n","$computer_address","perl $monitor_path/$perl_monitor_script");
print "Resultado2 -> [$rsh_result2] - [$?]]\n";
my @rsh_result3 = qx(rsh -n $computer_address perl $monitor_path/$perl_monitor_script);
print "Resultado3 -> [@rsh_result3] - [$?]]\n";
my $rsh_result = `rsh -n $computer_address perl $monitor_path/$perl_monitor_script`;
print "Resultado -> [$rsh_result] - [$?]]\n";
my $rsh_result2 = system("rsh","-n","$computer_address","perl $monitor_path/$perl_monitor_script");
print "Resultado2 -> [$rsh_result2] - [$?]]\n";
my @rsh_result3 = qx(rsh -n $computer_address perl $monitor_path/$perl_monitor_script);
print "Resultado3 -> [@rsh_result3] - [$?]]\n";
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4
Y obtengo los siguientes resultados:
- Código: Seleccionar todo
Executing = [rsh -n edc-mart perl /tmp/scripts/edc-mart-test2]
Can't open perl script "/tmp/scripts/edc-mart-test2": No such file or directory
Resultado -> [] - [0]]
Can't open perl script "/tmp/scripts/edc-mart-test2": No such file or directory
Resultado2 -> [0] - [0]]
Can't open perl script "/tmp/scripts/edc-mart-test2": No such file or directory
Resultado3 -> [] - [0]]
El programa script remoto se ejecuta (si estuviera) en la máquina remota. Sin embargo quiero obtener dos valores:
- El resultado de rsh con el mensaje "Can't open perl script "/tmp/scripts/edc-mart-test2": No such file or directory".
- El programa remoto Perl hace un exit() con un string de salida. Algo así como "exit '2 Salida2';". Querría también leerlo.
He estado leyendo, pero no sé cómo hacerlo. ¿Haría falta redirigir la salida del rsh de alguna manera?
¡Gracias por adelantado!