【发布时间】:2009-06-17 13:14:42
【问题描述】:
我有一个使用 curl 的 php 脚本,一切都很好。它通过 cron 作业运行。我稍后再回来,每次运行时都会保存一个带有输出的新文件。
如何防止创建这些文件?
【问题讨论】:
-
与@jjclarkson。默认情况下,cURL 不写入任何文件(可能是 cookie 容器除外)。我们需要查看您的代码,这是它自己在做的事情。
我有一个使用 curl 的 php 脚本,一切都很好。它通过 cron 作业运行。我稍后再回来,每次运行时都会保存一个带有输出的新文件。
如何防止创建这些文件?
【问题讨论】:
创建该文件的是 cron 守护进程。默认情况下,它将标准输出保存到文件中。 更改脚本以将其输出指向 /dev/null:
/etc/crontab:
59 * * * * USER curl localhost/script.php > /dev/null 2>&1
这样就可以了。
/Zyber
【讨论】:
如果您使用 wget 在 cron 中调用脚本,您可能需要通过以下方式将输出设置为 dev/null:
59 * * * * wget -O - -q http://yourdomain.com/path/to/script.php
-O 指定写入输出的位置,以下- 指定 dev/null。 -q 告诉 wget 以安静模式运行,这意味着它不会将消息写入标准输出。
如果 cron 正在创建文件,您还可以通过将上面的行更改为以下内容来禁止来自 cron 的任何输出:
59 * * * * wget -O - -q http://yourdomain.com/path/to/script.php > /dev/null 2>&1
【讨论】:
问题是因为这是在“共享”主机帐户上,他们声称无法将 cron 结果发送到 /dev/null。谁知道,谁在乎。为了解决这个问题,我创建了一个每天删除输出文件的脚本。感谢大家的帮助。
【讨论】: