如何设置bash执行速度



我正在尝试构建邮件。一切都很好,但是太慢了。

这是bash文件的代码

#!/bin/bash
FILE=$(cat $1)
for i in $FILE
do
php send.php $i
done

我的问题是如何使其工作速度更快,因为它运行速度非常慢。我已经尝试改变睡眠,但没有成功。

我该怎么做: 选择10行 php send.php $ i1 php send.php $ i2 等

&结束命令,在后台运行php命令。在文件的行上迭代的正确方法是运行readwhile循环,而不是for循环。

while IFS= read -r i; do
  php send.php "$i" &
done < "$1"

每次迭代至少需要尝试将睡眠1通过0.5或更少。

,由于您想同时运行send.php的多个实例,因此我建议您安装screen并将您的文件分为10个零件,然后将现有脚本包装到这样的脚本中:

#!/bin/bash
for i in {1..10}
do
    screen -dms "send-$1" bash sender.sh "list-part-$i.txt"
done

最新更新