在centos服务器上需要并行运行多个完全独立的任务。
通过判断任务的pid是否存在来确定任务是否结束。
由于bash是顺序执行任务的,执行完一个任务才执行下一个。要实现并行执行,脚本可以如下:
#!/bin/bash
start_t=`date +"%F %T"`
echo "start [" $start_t "]"
./mytask1 &
./mytask2 &
while [ 1 ]
do
usleep 1000000
procid=`pgrep mytask1 mytask2`
if [ "" = "$procid" ];then
current_time=`date +"%F %T"`
echo "finish [" $current_time "]"
break
fi
done&
注意:
1、"&"起了并发作用(line 6,7)
2、判断字符串是否相等, "=" 两部必须有空格,这是bash脚本的要求