gpt4 book ai didi

java - 我如何从 Java 运行 UNIX 终端并向它发送命令?

转载 作者:行者123 更新时间:2023-11-30 09:45:07 26 4
gpt4 key购买 nike

关于题目,代码如下


    Process proc = null;
try {
String[] cmdss= {"gnome-terminal"};


proc = Runtime.getRuntime().exec(cmdss, null, wd);
} catch (IOException e) {
e.printStackTrace();
}

从 Ubuntu 运行终端。

运行终端后如何向终端发出命令?

例如:运行终端并运行“ls”等命令

最佳答案

您可以在命令行上给 gnome-terminal 一些选项,让它执行什么。

gnome-terminal -e /my/fortran/program

-x 选项为您提供大致相同的好处,但您可以将命令行拆分为单独的词。

-e-x 都在将程序的标准输入和输出连接到终端时使用可选参数运行程序。因此用户可以与终端正常交互。

示例:

gnome-terminal -x bash -c "ls; echo '<enter>'; read"

这将打开终端并运行“程序”bashbash 将得到两个 参数:-cls; echo ....;阅读-c 选项使 bash 解析并执行下一个参数。这将调用 ls,然后是 echo ...,然后是等待返回键的 read

在 Java 中,您必须将参数适本地拆分成一个数组,如下所示:

String cmd[] = {"gnome-terminal", "-x", "bash", "-c", "ls; echo '<enter>'; read" };

关于java - 我如何从 Java 运行 UNIX 终端并向它发送命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7586858/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com