我一直在寻找并找不到清楚的东西,至少对我而言
我制作了一份时事通讯,并用邮件脚本发送了
由于它有很多电子邮件,我说ignore_user-abort并让它发送电子邮件即使我关闭了浏览器
现在我想查看进度,我的意思是,它是否已完成所有电子邮件
我知道有像posix_kill和getpid这样的函数,但我不知道它们是否是正确的使用方法 getpid给了我id,但我怎么知道脚本运行的名字?也许正在运行另一个我不知道的脚本
非常感谢
答案 0 :(得分:0)
尝试以下方法:
在脚本开始发送电子邮件之前,请通过示例emails.log创建文件 脚本完成后,删除它, 当脚本再次启动时询问是否存在,如果存在则终止该脚本, 我看到的唯一问题是如果脚本意外死亡或页面超时,文件将不会被删除 为避免这种情况,您可以在服务器中创建一个cronjob并配置为每天,每周或任何您想要的运行它,shell脚本将类似于:
newsletter.sh
#!/bin/bash
if [ ! -f /tmp/newsletter.log ]
then
touch /tmp/newsletter.log
php /var/www/newsletter.php >> /dev/null
rm /tmp/newsletter.log
fi
祝你好运!