Hallo,
ich möchte durch mein Programm ein ShellScript ausführen, das Problem ist wenn ich mehr als 1 Parameter übergebe dann klappt es nicht mehr und ich bekomme vom "p.waitfor" den Error-Code 2 ich habe es mit folgendem Code versucht.
Ich hoffe es kann mir Jemand helfen.
ich möchte durch mein Programm ein ShellScript ausführen, das Problem ist wenn ich mehr als 1 Parameter übergebe dann klappt es nicht mehr und ich bekomme vom "p.waitfor" den Error-Code 2 ich habe es mit folgendem Code versucht.
Java:
String exec = "/bin/bash -c /home/derH0ns/script.sh abdc";
ProcessBuilder pb = new ProcessBuilder();
try {
long starttime = System.currentTimeMillis();
String parts[] = exec.split(" ");
pb.command(new String[] {parts[0],exec.substring(parts[0].length()+1, exec.length())});
//pb.command(parts); <--- Keine Exeption aber klappt nicht
//pb.command(exec); <--- Fehler
//pb.command(new String[] {"/bin/sleep","10"}); <--- Geht
try {
Process p = pb.start();
int res = p.waitFor();
System.out.println(pb.command()+" - "+ res);
} catch (InterruptedException e) {
e.printStackTrace();
}
} catch (IOException e) {
e.printStackTrace();
}
Ich hoffe es kann mir Jemand helfen.