0

这是我当前的脚本,它在多个文件(filename0、filename1 等)上运行另一个脚本。我的问题是运行需要时间,因此希望并行运行它们。大多数解决方案都涉及后台作业。但是,如果我这样做,那么工作就会停止。我目前解决这个问题的方法是在不同的终端窗口中以 10 个为一组运行这个命令。

for i in `seq 0 100` 
do
my-other-script filename$i
done
4

2 回答 2

2

作业不会“停止”,因为它们是后台运行的,但您必须wait让它们完成以避免在它们完成之前退出脚本。文档

于 2013-06-05T09:59:51.500 回答
0

GNU Parallel 正是为这些类型的任务而设计的:

seq 0 100 | parallel -j10 my-other-script filename{}

您可以在以下位置找到有关 GNU Parallel 的更多信息:http ://www.gnu.org/s/parallel/

您可以在 10 秒内安装 GNU Parallel:

wget -O - pi.dk/3 | sh 

在http://www.youtube.com/playlist?list=PL284C9FF2488BC6D1上观看介绍视频

于 2013-06-06T11:29:21.340 回答