【问题标题】:Running a command in MacOs terminal from java从 java 在 MacOs 终端中运行命令
【发布时间】:2019-04-11 13:40:08
【问题描述】:

我正在尝试使用 java 代码(尤其是 ProcessBuilder)在 mac 终端中运行命令行。

我在 Windows 环境中编码,然后将其导出到 Mac 到 Jar 可执行文件中。

我设法使用下面发布的代码打开了终端,但是一旦到了那里,命令就没有运行,终端一直死机,等待键盘输入。

我将展示一个简单的示例来说明我想做的事情:

String[] arguments = new String[] {"/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal", "-c", "pwd"};
Process proc = new ProcessBuilder(arguments).start();

代码似乎运行良好,直到它到达“-c”参数,然后它什么也不做。

有人知道如何解决这个问题吗?谢谢!

编辑:我也尝试过不使用“-c”,但结果相同。

【问题讨论】:

标签: java macos


【解决方案1】:

试试这个:

 try {
  Runtime.getRuntime().exec("your command");
 } catch (IOException e) {
    e.printStackTrace();
 }

【讨论】:

  • 好的,像这样尝试过 Runtime.getRuntime().exec("/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal -c pwd"),也没有“-c”范围。结果相同,bash 打开后似乎没有收到命令。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-02-27
  • 2015-06-23
  • 2014-12-15
  • 1970-01-01
  • 1970-01-01
  • 2015-10-19
相关资源
最近更新 更多