每次运行时创建空文件的 Cron 作业

2022-08-30 20:47:55

我有一个php脚本,我想每分钟运行一次,看看是否有草稿新闻帖子需要发布。我在cPanel中使用“wget”作为cron命令,但我注意到(几天后)每次运行时都会在主目录中创建一个空白文件。我需要做些什么来阻止这种情况的发生吗?

谢谢。


答案 1

当 wget 运行时,默认情况下,它会从我需要记住的内容生成一个输出文件。

您可能需要使用wget的某个选项来指定它应该将其输出写入哪个文件 - 并用作目标文件(这是一个“特殊文件”,它将“吃掉”您可以写入的所有内容)/dev/null


从人来看,or选项将是一个很好的候选者:-O--output-file

-O file
--output-document=file
文档不会写入相应的文件,但所有文档将连接在一起并写入文件。

因此,您可能需要使用类似如下的内容:

wget -O /dev/null http://www.example.com/your-script.php


顺便说一句,从 crontab 运行的脚本的输出通常会被重定向到日志文件 - 它总是可以提供帮助。

像这样的东西可能会有所帮助,关于这一点:

wget -O /dev/null http://www.example.com/your-script.php >> /YOUR_PATH_logfile.log

您可能还希望将错误输出重定向到另一个文件(可能很有用,以帮助调试,出现问题的那一天):

wget -O /dev/null http://www.example.com/your-script.php >>/YOUR_PATH/log-output.log 2>>/YOUR_PATH/log-errors.log

答案 2

推荐