我试图在" crontab -e" 中设置一个cron作业:
* * * * * /usr/bin/php /home/vagrant/Code/xxx/testCron.php
testCron.php 文件创建另一个文件,它只包含这个:
<?php
$f = fopen('cron-' . date('H-i-s') . '.txt', 'w+');
fwrite($f, 'asdf');
fclose($f);
但文件 cron -.... txt 不会出现。可能有问题吗?
我做了/检查了这个:
答案 0 :(得分:0)
您可以检查来自cron作业的日志以识别错误。
根据您的系统,cron日志可以位于不同的位置。找到包含cron日志的文件:
while (reader.Read())
{
if (reader.Name.Equals("Group"))
{
name = reader.GetAttribute("Name");
// Now I need to reach the specific "MachineName" attribute of the "Client" sub-element but don't know how.
}
}
reader.Close();
然后查看有问题的日志的内容,例如通过grep -ic cron /var/log/* | grep -v :0
./auth.log:1246
./auth.log.1:3054
./bootstrap.log:3
./syslog:187
./syslog.1:220
:
cat
或查看该文件中最新的testCron.php:
cat /var/log/syslog
答案 1 :(得分:0)
您的脚本会创建没有路径的cron-...txt
文件;因此它出现在当前目录中 - 如果它具有写入权限。 Cronjobs将有一个不同的开始目录 - 通常是用户的家,但可能在任何地方,具体取决于配置。
尝试以下方法之一: