在我的/ etc / crontab文件中,我写道:
* * * * * PLACK_ENV=development -I /home/adrian/app/lib/ /home/adrian/app/script/db/log_to_db.pl
每分钟运行一次cron作业。作业正在运行log_to_db.pl perl脚本,该脚本将数据插入到我的数据库中。
当我在终端中跑步时 PLACK_ENV =开发-I / home / adrian / app / lib / /home/adrian/app/script/db/log_to_db.pl 没关系!该脚本运行。
但是cron的工作没有用! 什么可能是错的?
PD:我的脚本开始像
#!/usr/bin perl
....
我的cron日志打印:
Jul 8 20:29:01 dev0001 crond[1829]: (*system*) RELOAD (/etc/crontab)
Jul 8 20:29:01 dev0001 crond[1829]: (CRON) bad username (/etc/crontab)
Jul 8 20:30:01 dev0001 crond[1829]: (*system*) RELOAD (/etc/crontab)
Jul 8 20:30:01 dev0001 crond[1829]: (CRON) bad username (/etc/crontab)
Jul 8 20:30:01 dev0001 CROND[13504]: (root) CMD (/usr/lib64/sa/sa1 -S DISK 1 1)
答案 0 :(得分:4)
将它放入系统crontab
时需要用户名 * * * * * adrian PLACK_ENV=development -I /home/adrian/app/lib/ /home/adrian/app/script/db/log_to_db.pl
但正如@jithin所说,将它放在你的用户crontab(crontab -e)中可能更有意义。
答案 1 :(得分:2)
不要直接编辑crontab文件。而是使用crontab -e并添加cron条目。
参考link