我怎样才能cron
以 root 身份运行 python 脚本?这是我的 crontab 文件:
0 * * * * ./twitter/twitter.py
难道我做错了什么?
答案1
如果这是 root 的 crontab(使用sudo crontab -u root -e
或su -c 'crontab -u root -e'
或类似编辑),那么./twitter/twitter.py
将每小时运行一次。如果这是系统 crontab ( /etc/crontab
),则星号后面需要第六个字段:0 * * * * root …
。我建议使用 root 用户的 crontab,并将系统 crontab 留给系统。
./twitter/twitter.py
从当前目录开始。 Cron 无法猜测您想要当前目录是什么:您从未告诉过它。更改此设置以使用脚本的绝对路径,例如/home/paul/scripts/twitter/twitter.py
.
你需要确保以(我假设它是一个Python脚本)twitter.py
开头并且在cron的默认值中(这将取决于你的unix品牌;你可以确定它在默认值中,但是如果你的位于其他地方,例如,您可能需要添加一行(如crontab 顶部的行)。#!/usr/bin/env python
python
PATH
/usr/bin
PATH
python
/usr/local/bin
PATH=/usr/local/bin:/bin:/usr/bin
还要确保脚本可执行 ( chmod +x …/twitter.py
)。