我有以下 cron 工作:
*/5 8-20 * * * php /var/www/user/cron_email.php >> /var/www/log/log.txt
Run Code Online (Sandbox Code Playgroud)
它创建以下文件:
david@ubuntu:/var/www/log$ ls -l
-rw-r--r-- 1 root root 540 2011-05-30 17:10 log.txt?
Run Code Online (Sandbox Code Playgroud)
为什么它会创建一个尾随问号?我怎么能阻止呢?
(我正在登录控制台并在没有编辑器的情况下查看结果,所以我知道“?”在那里。)
这是唯一一个尾随 '?' 的文件。所以我知道这不是编辑器的问题。我什至没有使用任何编辑器,我只是查看控制台 CRT 屏幕。
运行此命令将提供更多信息:
$ crontab -l | cat -tve
Run Code Online (Sandbox Code Playgroud)
我相当有信心您会在输出末尾看到额外的字符,如下所示:
*/5 8-20 * * * php /var/www/user/cron_email.php >> /var/www/log/log.txtM-U$
Run Code Online (Sandbox Code Playgroud)
美元符号只是表示行尾(cat 的 -e 选项)。.txt
和之间的任何内容$
都是额外的垃圾,可能是由于其他答案中列出的原因。
解决此问题的最简单方法是将您设置$EDITOR
为简单的编辑器并重新编辑 crontab。例如:
$ EDITOR=/usr/bin/pico crontab -e
Run Code Online (Sandbox Code Playgroud)
然后删除行尾的任何无关字符。
归档时间: |
|
查看次数: |
1868 次 |
最近记录: |