Foro de elhacker.net

Programación => Java => Mensaje iniciado por: MAJOR_TOM en 6 Enero 2005, 04:11 am



Título: Java, Runtime.exec()
Publicado por: MAJOR_TOM en 6 Enero 2005, 04:11 am
Tengo un pequeño problema con este metodo en Linux.
Cuando lo llamo con el argumento del conjunto de comandos correspondientes. Bueno, pues solamente se me ejecuta el primero de todos. Es decir, el siguiente ejemplo:

"sh -c export CVSROOT=/home/..."
bueno, pues solo ejecuta lo correspondiente a teclear en una terminal "export", con lo cual se muestran las variables del export, no se ejecuta ni el comando deseado ni los siguientes. Si alguien puede decirme por que es y como solucionar se lo agradeceria mucho.

Aqui dejo un ejemplo, es de una practica de un servidor cvs, para controlarlo y tal:

import java.io.*;

class prueba{
           public static void main(String[] args){
              Runtime r = Runtime.getRuntime();
              Process p ;
              String comando = "sh -c export CVSROOT=/home/major_tom/repositorio;cd /home/major_tom/nuevo;cvs import -m \"nuevo\" hola hola start";
             InputStream i;
             try{
             p = r.exec(ccomando);
             i = p.getInputStream();
             int in = i.read();
             while(in!=-1){
                System.out.println((char)in);
                 in = i.read();
             }
             }catch(Exception e){}
    }
}