gpt4 book ai didi

用于 Java 的 Linux shell 作业 api

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:59:16 25 4
gpt4 key购买 nike

Java 中是否有可用的 API 来查询作业?换句话说,我正在寻找“作业”命令的 api,以便我可以了解作业的状态(runningstopped 等)。理想情况下,我希望能够提交作业,但我认为可以通过调用 shell 并传递 &

轻松实现

最佳答案

如果您有/develop - shell 脚本来处理 Job ,那么您可以使用 java.lang.process api 来执行该 shell 脚本并查看它是否可以满足您的目的。您还可以将参数与参数一起传递。以下是可能对您有用的代码片段。

import java.io.IOException;
import java.io.InputStream;


public class MYProcess
{
int startProcess()
{
String cmd = "/opt/test/bin/mystart.sh"

// create a process for the shell
ProcessBuilder pb = new ProcessBuilder("bash", "-c", cmd);
// use this to capture messages sent to stderr
pb.redirectErrorStream(true);
Process shell = null;
int shellExitStatus =-1;
try
{
shell = pb.start();
}
catch (IOException e)
{
e.printStackTrace();
}
InputStream shellIn = shell.getInputStream();
try
{
shellExitStatus = shell.waitFor();
//logger.info("call exit status:" + shellExitStatus);
//logger.info("If exit status is not zero then call is not successful. Check log file.");
}
catch (InterruptedException e)
{
//logger.error("error while call" + e);
e.printStackTrace();
} // wait for the shell to finish and get the return code
return shellExitStatus;
}
}

关于用于 Java 的 Linux shell 作业 api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9883588/

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