shell 并发任务

shell 使用 &和wait 实现并发任务

实例:

顺序执行脚本

in_concurrence.sh

#!/bin/bash
  
echo "current date: `date`"

for i in `seq 100 110`
do
        echo "sleep 1"
        sleep 1
done

echo "current date: `date`"

执行结果: 

current date: 2019年 6月29日 星期六 08时19分22秒 CST
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
current date: 2019年 6月29日 星期六 08时19分33秒 CST

并发执行脚本

concurrence.sh

#!/bin/bash
  
echo "current date: `date`"

for i in `seq 100 110`
do
{
        echo "sleep 1"
        sleep 1
} &
done

wait

echo "current date: `date`"

执行结果:

current date: 2019年 6月29日 星期六 08时25分02秒 CST
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
sleep 1
current date: 2019年 6月29日 星期六 08时25分03秒 CST

参考:linux shell 多线程执行程序

你可能感兴趣的:(linux)