【发布时间】:2012-12-25 05:30:39
【问题描述】:
我正在使用以下代码从我的 Java 应用程序运行命令:
String cmd[] = {"sh","-c", "sudo chmod 777 -R " + path};
Terminal.runCommand(cmd);
我想执行 .jar 只需单击它并选择“Open with..” -> “Java”;
问题是由于“sudo”命令,应用程序一直在等待密码,但没有调用终端,用户无法提供密码..
那么,我怎样才能调用上面的 coomand 和一个终端,让用户有机会输入密码并且应用程序最终继续运行?
非常感谢!
【问题讨论】:
-
您是否希望
ls_exec也可以使用 sudo 运行?使用 Process/ProcessBuilder,您可以读取输出并写入程序的输入。Terminal可以做什么? -
@PeterLawrey 没想到,其实我觉得“le_exec”没有必要,不是吗?谢谢。
-
我以前没见过,但它会保持一个窗口打开(假设有一个窗口),直到用户点击回车。我怀疑它在这里没有用。
-
@PeterLawrey 好的,谢谢。所以,没有必要,直到我们得到一个窗口,我正在寻找那个窗口。
标签: java linux shell process terminal