java shell 异步执行_java执行shell脚本并输出执行情况

1.脚本test.sh,置于/Users/hdwang目录下

#!/bin/shcd/Users/hdwangecho ls:`ls`for((i=1;i<=10;i++));do

echo $(expr $i \* 3 + 1);sleep1sdone

echo jps:`jps -l`

2.java执行test.sh

public classExecShell {public static voidmain(String[] args) {try{

Process pro= Runtime.getRuntime().exec("/Users/hdwang/test.sh");

InputStream in=pro.getInputStream();

BufferedReader read= new BufferedReader(newInputStreamReader(in));

String line= null;while((line = read.readLine())!=null){

System.out.println(line);

}

pro.waitFor();

}catch(Exception e) {

e.printStackTrace();

}

}

}

3.执行结果

ls:App Applications Desktop Documents Downloads Library Movies Music Pictures Projects Public a.html c curl.txt java_error_in_idea.hprof mavenRepo nginx配置 res sessiontmp test.sh 记录.txt 机器配置环境等 机器配置环境等.zip

4

7

10

13

16

19

22

25

28

31

jps:11617 sun.tools.jps.Jps 11592 org.jetbrains.jps.cmdline.Launcher 10633 org.jetbrains.jps.cmdline.Launcher 11593 com.hdwang.ExecShell 10539 com.hzxc.chess.server.Booter 555


版权声明:本文为weixin_29029673原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。