【发布时间】:2013-02-27 16:21:13
【问题描述】:
我需要在 Fedora 16 的终端上从 JAVA 程序运行命令。我尝试使用
Runtime.getRuntime().exec("xterm");
但这只是打开终端,我无法执行任何命令。
我也试过这个:
OutputStream out = null;
Process proc = new ProcessBuilder("xterm").start();
out = proc.getOutputStream();
out.write("any command".getBytes());
out.flush();
但我仍然只能打开终端,但无法运行命令。 关于如何做到这一点的任何想法?
【问题讨论】:
-
你试过
Runtime.getRuntime().exec(<insert command name here>);你不需要打开xterm那就是打开你的终端。 -
你应该试试
sh -s,你可以使用你写的代码,shell会接受来自流的命令,或者sh -c <the command you want to run>,参数中指定的命令将被运行。