2

我有 137 个 php 文件,我想在一个命令中(并行)而不是按顺序运行它们。但问题是每个文件需要 2-5 秒。所以我试图制作一个(.sh)文件并将每一行作为:

/usr/bin/php /files/file1.php
/usr/bin/php /files/file2.php
/usr/bin/php /files/file3.php

它将完成 file1,然后按顺序运行 file2 和 file3。那么请什么是php或sh命令一键运行137个php文件(并行)。

4

3 回答 3

4

你把它们放在后台。

for ($i=1; $i<=137; $i++) {
    exec("/usr/bin/php /files/file$i.php > /dev/null 2>&1 &");
}
于 2012-07-08T08:09:48.547 回答
1

通过添加“nohup”和“&”在后台运行脚本

nohup /usr/bin/php /files/file1.php &
nohup /usr/bin/php /files/file2.php &
nohup /usr/bin/php /files/file3.php &
于 2012-07-08T08:11:25.813 回答
0

您可以使用 pcntl lib ,它在 php 中启用线程,您可以使用它并创建一个将调用 other 的 php-master 文件,然后您可以从命令文件中主控文件

于 2012-07-08T08:11:27.417 回答