启动要并行运行的进程

启动要并行运行的进程

我正在尝试并行启动 16 个 python 脚本。

我尝试过

for i in {0..15}
    do
    python my_script.py "$i"
    done 

但经检查,htop它只在一个处理器上运行。我猜想该进程是按顺序执行的。

我当然可以打开新选项卡并在每个选项卡中运行一个进程,但这似乎是多余的。正确的做法是什么?

答案1

您正在寻找&将在后台运行的作业:

for i in {0..15}
do
    python my_script.py "$i" &
done

这将同时启动所有 15 个。或者,为了进行更精细的控制,您可能需要查看GNU并行

有关各种 shell 控制运算符的更多信息,请参阅这里

相关内容