1
我有一个Java程序,需要在前台启动一个交互式命令行界面C程序。我需要这个在Windows和Linux上工作。如何从Java中启动交互式命令行界面程序?
在Windows中,一切工作正常。我能够在前台启动我的程序与cmd
如下:
command = "cmd /c start \"My_C_Program\" /MAX /WAIT My_C_Program ";
theProcess = Runtime.getRuntime().exec(command);
在Linux中,我不能做同样的/bin/bash
。不管我怎么努力,过程总是会在后台运行:
String[] commands = { "/bin/bash", "-c", "./My_C_Program" };
theProcess = Runtime.getRuntime().exec(commands);
我知道我可以检索后台进程的输出,但由于该方案是互动的,这是没有用的。
任何帮助将不胜感激。即使是复杂的解决方法:)
'bash'是一个不是窗口程序的shell,可以用'xterm'或者其他窗口来尝试 – 2014-02-16 09:20:14
@RC。谢谢。这是问题。 – Ahmad