我可以从Java执行Linux命令(如ls
或pwd
),但没有问题,但无法执行Python脚本。如何从Java执行Python脚本?
这是我的代码:
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) {}
什么也没发生。它达到了发送,但它只是在它之后停止...
我想执行一个需要root权限的脚本,因为它使用串行端口。此外,我必须传递一些参数(包)的字符串。
是你的python脚本写出somethong它的标准? – VishalDevgire 2013-05-08 18:15:30
如何使用Apache commons exec? – rkosegi 2013-05-08 18:20:15