Mogę wykonywać polecenia systemu Linux, takie jak ls
lub pwd
z Java bez problemów, ale nie mogę wykonać skryptu w języku Python.Jak uruchomić skrypt Python z Java?
To jest mój kod:
Process p;
try{
System.out.println("SEND");
String cmd = "/bash/bin -c echo password| python script.py '" + packet.toString() + "'";
//System.out.println(cmd);
p = Runtime.getRuntime().exec(cmd);
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String s = br.readLine();
System.out.println(s);
System.out.println("Sent");
p.waitFor();
p.destroy();
} catch (Exception e) {}
Nic się nie stało. Osiągnięto SEND, ale po prostu przestał po nim ...
Próbuję wykonać skrypt, który potrzebuje uprawnień root, ponieważ używa portu szeregowego. Ponadto, muszę przekazać ciąg z pewnymi parametrami (pakiet).
to Twój skrypt Pythona, który napisał coś na swój standardowy sposób? – VishalDevgire
Co powiesz na użycie komendy Apache commons? – rkosegi