lanzar un script en máquina linux desde aplicación java

jose
25 de Febrero del 2005
Muy buenas. Estoy trabajando con una aplicación ubicada en una máquina Linux. Necesito lanzar un script en dicha máquina para recuperar unos ficheros.
El caso es que lo lanzo con Runtime.getRuntime().exec("ruta del script") y me salta una IOException en la que me dice que tla script not found. Cuando realmente si existe dicho script.
He probado a lanzar un Runtime.getRuntime().exec("ls -l") y ni siquiera. Deduzco que para lanzar algo en Linux hay que hacer algo mas. ¿Tenéis alguna idea? Mil gracias.

chuidiang
25 de Febrero del 2005
Hola:

No debería hacerte falta nada especial. Un tema con el que tienes que tener cuidado es que las variables de entorno no se exportan automaticamente a la maquina virutal, con lo que la variable PATH no existe dentro del programa java.

Pon el path completo y el nombre del ejecutable/script

/bin/ls
<path_script>/<script>

¿ls también da el IOException?. Ten en cuenta que la salida del ls se redirige a tu programa java y no la vas a ver en pantalla. Tendrías que leerla a traves de la clase Process que te devuelve el exec().

Se bueno.