我遇到需要从.jar执行UNIX命令的情况。我尝试了以下(日期是仲裁):
java.lang.Runtime rt = java.lang.Runtime.getRuntime();
java.lang.Process p = rt.exec("sudo date --set=\"Tue Aug 11 10:10:20 BST 2015\"");
p.waitFor();
logger.log("executed with value: " + p.exitValue());
我只是想知道在这种情况下是否有办法检查退出代码?
注意:我用这种方式执行了一个命令,即“sudo mkdir -p / root / abcd”,它确实有用。
答案 0 :(得分:0)
我认为p.waitFor()
不是您需要的功能 - 请查看原因:waitFor -Process。
如果您使用p.destroy()
,您将获得返回值。
编辑:我发现本教程使用了类似的代码:) Tutorial
答案 1 :(得分:0)
p.waitFor()就足够了,我正在查找错误的日志文件......有点尴尬但承认这些错误是不重复这些错误的第一步。谢谢大家的帮助!