【发布时间】:2014-03-07 12:17:58
【问题描述】:
我正在编写一个 servlet 来运行终端命令,我必须在同一个终端上一个接一个地运行三个命令。 当我使用如下所示的 exec 时,我能够获得单个命令的结果,
Runtime rt = Runtime.getRuntime();
process proc = rt.exec("zsh");
但是当我尝试跑步时,
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("zsh", "source ./myenv/bin/activate", "python runner.py");
它显示如下警告(不执行),
The method exec(String, String[], File) in the type Runtime is not applicable for the arguments (String, String, String).
我也尝试过运行三个不同的 exec 命令,但它们不会以相同的顺序在同一个终端上发生,我应该怎么做才能使上述三个命令在同一个终端上按顺序运行并给我输出在第三个命令之后?
我打算运行的三个命令是, 1.zsh 2. 来源 ./myenv/bin/activate 3. python runner.py 这三个必须以相同的顺序一个接一个地执行。
【问题讨论】:
-
能否创建一个包含三个命令的脚本并执行?
-
它不可执行,它会给出上述警告。
标签: java python servlets terminal