我一直在寻找,找不到明确的东西,至少对我来说
我制作了一份时事通讯并用邮件脚本发送
由于它有很多电子邮件,我说 ignore_user-abort 并让它在我关闭浏览器的情况下发送电子邮件
现在我想检查进度,我的意思是,如果它已完成所有电子邮件
我知道有诸如 posix_kill 和 getpid 之类的函数,但我不知道它们是否适合使用 getpid 给我 id 但我怎么知道正在运行的脚本的名称?也许另一个我不知道的脚本正在运行
多谢
我一直在寻找,找不到明确的东西,至少对我来说
我制作了一份时事通讯并用邮件脚本发送
由于它有很多电子邮件,我说 ignore_user-abort 并让它在我关闭浏览器的情况下发送电子邮件
现在我想检查进度,我的意思是,如果它已完成所有电子邮件
我知道有诸如 posix_kill 和 getpid 之类的函数,但我不知道它们是否适合使用 getpid 给我 id 但我怎么知道正在运行的脚本的名称?也许另一个我不知道的脚本正在运行
多谢
尝试以下操作:
在脚本开始发送电子邮件之前,通过示例 emails.log 创建一个文件,当脚本完成后,将其删除,当脚本再次启动时询问是否存在,如果存在则杀死脚本,我看到的唯一问题是如果脚本意外终止或页面超时 文件不会被删除 为避免这种情况,您可以在服务器中创建一个 cronjob 并配置为每天、每周或任何您想要的运行它,shell 脚本将如下所示:
时事通讯.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
祝你好运!