Bash脚本:产生多个进程问题

时间:2013-08-17 20:41:45

标签: bash scripting wait backticks

所以我正在写一个脚本来调用一个进程365次,它们应该分10批运行,所以这是我写的但有多个问题 - 1.日志消息未写入日志文件,我在错误文件中看到错误消息 2.我一直从脚本流程的脚本中得到这个“命令未找到”错误。 3.即使命令没有成功,它仍然不打印FAIL但打印成功

#!/bin/bash

set -m
FAIL=0

for i in {1..10}
do
  waitPIDS=()
  j=$i
  while [ $j -lt 366 ]; do

  exec 1>logfile
  exec 2>errorfile

 `process $j &`

  waitPIDS[${#waitPIDS[@]}]=$!
  j=$[$j+1]

done

for jpid in "${waitPIDS[@]}"
do
  echo $jpid
  wait $jpid
  if [[ $? != 0 ]] ; then
    echo "fail"
  else
    echo "success"
  fi
done

done

它出了什么问题?

谢谢!

1 个答案:

答案 0 :(得分:1)

至少,这一行:

 `process $j &`

不应该有任何反引号。你可能只想要:

 process $j &

除此之外,您将覆盖日志文件而不是附加到日志文件;这是打算吗?