使用到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命令并获取执行结果的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。
如对本文有疑问, 点击进行留言回复!!
宝塔工具+javaweb+mysql+tomcat部署项目教程(详细教程适合小白)
荐 SSM Web项目部署(环境配置+打成War包+Tomcat部署)
mac os 新系统配置—— anaconda安装及管理——idea安装配置
ubuntu 16.04 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用) 亲试可行
网友评论