我试图通过以下代码打开gnome-terminal从Java执行命令:
Runtime.getRuntime().exec(new String[]{"gnome-terminal", "-e", "command"});
但是这段代码会显示用户的终端,我如何在后台打开gnome-terminal?
答案 0 :(得分:0)
您无需在视觉上打开终端来执行命令。 Shell解释器是一个程序,您可以在没有终端窗口的情况下调用它。终端窗口的作用是它只是发送您在终端上键入的内容,与底层shell解释器交互并为您提供结果。当您需要运行特定于操作系统的命令时,您可能希望直接调用您想要的shell解释器(即bash,csh,ksh)并从Java程序中获取结果。
使用命令并从中读取输出有时并不容易。因此,我建议您查看Apache Exec,以便于从外部调用的程序中读取数据。