我正在运行一个bash脚本,该脚本由两个相当密集的循环组成,这些循环按顺序运行(第一个循环运行后跟第二个循环)。这是非常耗时的,我想知道是否有办法并行运行这些循环以使脚本更有效率?
感谢任何帮助。谢谢。
答案 0 :(得分:2)
你可以这样做:
( while x
do
loop 1
done
) &
( while y
do
loop 2
done
) &
# Wait for both loops to finish
wait
答案 1 :(得分:1)
f1(){
while true ; do
# do something
sleep 1
done
}
f2(){
while true ; do
# do something
sleep 1
done
}
# run both f1 and f2 in parallel
f1 &
PID1=$!
f2 &
PID2=$!
# waits the end of both
wait $PID1 $PID2
echo "Done!"