linux – 如何在bash脚本中同时运行两个不同的长时间运行命令?

前端之家收集整理的这篇文章主要介绍了linux – 如何在bash脚本中同时运行两个不同的长时间运行命令?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
作为迁移脚本的一部分,我必须chmod和chown成千上万的文件.每个命令大约需要一个半小时才能完成.我意识到这两个操作可以同时运行,这减少了运行时间,我通过在 shell中测试证实了这一点.

我知道用’&’将命令推入后台的技巧,但是我需要确保两个进程在继续执行脚本的其余部分之前完成.

谢谢

解决方法

使用wait命令.

这个演示:

#!/bin/bash
echo $SECONDS
sleep 12&
sleep 15&
jobs
wait
echo $SECONDS
echo "jobs are done"

生成输出

0
[1]-  Running                 sleep 12 &
[2]+  Running                 sleep 15 &
15
jobs are done

输出最后两行之前有一个十五秒的暂停.

猜你在找的Linux相关文章