测试脚本 test.sh
# 定义一个数字类型变量num,初始值为0declare -i num=0# 定义变量Index,从1到100循环for Index in {1..100};do# 每次将Index的值加到num上,之后休眠100毫秒 let num+=$Index sleep 0.1done# 屏幕输出结果 $1 为脚本后携带的参数echo "[$1] num is $num"
Java执行脚本
System.out.println("start exec 1");Process exec = Runtime.getRuntime().exec("/bin/bash test.sh t1");System.out.println("running 1");BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(exec.getInputStream()));String line = null;while ((line = bufferedReader.readLine()) != null) { System.out.println(line);}System.out.println("end 1");
执行结果
start exec 1running 1[t1] num is 5050end 1