看下面这个crontab
* * * * * /usr/bin/python /home/zhangdapeng/del.py > /dev/null 2>&1
一般的比较安全的,无困扰的情况下是这样的
但是调试很不方便,报错了,不知道为啥报错了,找不到原因,改一下
* * * * * /usr/bin/python /home/zhangdapeng/del.py > /path/result.log 2>&1
这样的话就能在result.log知道原因了。
实我倒是认为使用 Crontab 最常见的一个问题往往是因为环境变量不对。经常会看到论坛里有人问:为什么我的 Crontab 创建了不执行? 准备创建一条 Cron JOB 的时候,很多人都喜欢在命令行下运行一遍,因为这个时候环境变量是随着 Shell 自动带进来,在 Crontab 中则可能因为找不到正确的环境变量,JOB 就不能执行。这个小问题就像出天花,一次教训之后就都记得了。
必须使用的一则技巧
每条 JOB 执行完毕之后,系统会自动将输出发送邮件给当前系统用户。日积月累,非常的多,甚至会撑爆整个系统。所以每条 JOB 命令后面进行重定向处理是非常必要的: >/dev/null 2>&1 。前提是对 Job 中的命令需要正常输出已经作了一定的处理, 比如追加到某个特定日志文件。
时间: 2024-09-20 19:55:30