测试脚本 test.sh

  1. # 定义一个数字类型变量num,初始值为0
  2. declare -i num=0
  3. # 定义变量Index,从1到100循环
  4. for Index in {1..100};do
  5. # 每次将Index的值加到num上,之后休眠100毫秒
  6. let num+=$Index
  7. sleep 0.1
  8. done
  9. # 屏幕输出结果 $1 为脚本后携带的参数
  10. echo "[$1] num is $num"

Java执行脚本

  1. System.out.println("start exec 1");
  2. Process exec = Runtime.getRuntime().exec("/bin/bash test.sh t1");
  3. System.out.println("running 1");
  4. BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(exec.getInputStream()));
  5. String line = null;
  6. while ((line = bufferedReader.readLine()) != null) {
  7. System.out.println(line);
  8. }
  9. System.out.println("end 1");

执行结果

  1. start exec 1
  2. running 1
  3. [t1] num is 5050
  4. end 1