我一直在试图让crontab工作一段时间,但它似乎并不想工作。我需要在每个午夜进行初始化的python脚本完美地从命令终端完成。我的Python脚本的位置是:不能让Crontab工作
/home/rv/ncbi-blast-2.2.23+/database_backup/backup.py
我contab看起来是这样的:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/home/rv/ncbi-blast-2.2.23+/database_backup
MAILTO=root
HOME=/
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
0 0 * * * /usr/bin/python /home/rv/ncbi-blast-2.2.23+/database_backup/backup.py
我的python脚本如下所示:
#!/usr/bin/python
from subprocess import Popen
import datetime
today = datetime.date.today()
today = str(today)
#print today
f = open("/home/rv/ncbi-blast-2.2.23+/database_backup/%s.sql" % (today), "w")
x = Popen(["mysqldump", "-u", "root", "-p*****", "normalisation"], stdout = f)
x.wait()
f.close()
任何想法,我去错了吗?
只是看着cron的日志,我得到这个每次进入我试图
(root) BAD FILE MODE (/etc/crontab)
我得到了同样的错误,当我用shell脚本试图藏汉
愚蠢的问题,但是是运行的cron守护进程? – 2010-06-22 17:08:13
只需双重检查,是的它是 – Craig 2010-06-22 17:08:45
您的crontab PATH不包含'/ usr/local/bin'。但是你的python shebang行引用'/ usr/local/bin/python'。也许在crontab PATH中加入'/ usr/local/bin',和/或明确调用脚本: '0 0 * */usr/local/bin/python /home/rv/ncbi-blast-2.2.23 +/database_backup/backup.py' – unutbu 2010-06-22 17:11:35