java调用shell命令并获取执行结果的示例
更新时间:2018年07月18日 08:48:32 作者:arkblue
今天小编就为大家分享一篇java调用shell命令并获取执行结果的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
使用到Process和Runtime两个类,返回值通过Process类的getInputStream()方法获取
package ark; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; public class ReadCmdLine { public static void main(String args[]) { Process process = null; List<String> processList = new ArrayList<String>(); try { process = Runtime.getRuntime().exec("ps -aux"); BufferedReader input = new BufferedReader(new InputStreamReader(process.getInputStream())); String line = ""; while ((line = input.readLine()) != null) { processList.add(line); } input.close(); } catch (IOException e) { e.printStackTrace(); } for (String line : processList) { System.out.println(line); } } }
调用shell脚本,判断是否正常执行,如果正常结束,Process的waitFor()方法返回0
public static void callShell(String shellString) { try { Process process = Runtime.getRuntime().exec(shellString); int exitValue = process.waitFor(); if (0 != exitValue) { log.error("call shell failed. error code is :" + exitValue); } } catch (Throwable e) { log.error("call shell failed. " + e); } }
以上这篇java调用shell命令并获取执行结果的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
mybatis取别名typeAliases标签的位置放错导致报错的解决
这篇文章主要介绍了mybatis取别名typeAliases标签的位置放错导致报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-09-09Spring Boot与Kotlin 整合全文搜索引擎Elasticsearch的示例代码
本篇文章主要介绍了Spring Boot与Kotlin 整合全文搜索引擎Elasticsearch的示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2018-01-01
最新评论