一、直接将循环写到php代码里,再将 * * * * * php artisan schedule:run >> /dev/null 2>&1 写进crontab -e
for ($i=1;$i<=20;$i++){
$users = $this->user->getUserIDs();
foreach ($users as $user){
$job = (new TradeJob($user->id));
dispatch($job);
}
sleep(3);
}
二、通过shell脚本
/var/www/html/test.sh
#!/bin/bash
step=1 #间隔的秒数
for (( i = 0; i < 60; i=(i+step) )); do
/usr/local/php/bin/php /home/www/blog/artisan schedule:run
sleep $step
done
exit 0
crontab -e 编写 执行 第一步写的 test.sh 脚本
* * * * * /var/www/html/test.sh
四、也可以将crontab -e 里面的任务计划写到一个test.txt文件里,然后 crontab test.txt也可以。
参考:https://www.cnblogs.com/lamp01/p/6864258.html
/dev/null 文件
如果希望执行某个命令,但又不希望在屏幕上显示输出结果,那么可以将输出重定向到 /dev/null:
$ command > /dev/null
/dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。
如果希望屏蔽 stdout 和 stderr,可以这样写:
$ command > /dev/null 2>&1