如何在Debian上使用CRON运行python脚本?

时间:2017-10-09 06:45:03

标签: python bash cron debian

我想每隔X小时运行一个脚本,这就是为什么我写了一个BASH(名为mybash.sh)这样调用这个脚本的原因:

#!/bin/bash PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/usr/src/Python-2.7.13 python /usr/src/Python-2.7.13/test1.py

这个bash文件在我的/usr/src/Python-2.7.13中,我的test1.py也在。 如果我正在运行sh mybash.sh它正在运行!我也做了chmod a+x mybash

进入crontab-e我写道:

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/sbin:/usr/src/Python-2.7.13 
* * * * * /usr/src/Python-2.7.13/mybash.sh 2>&1

如果我正在呼叫crontab-l,我会看到这些线路。

但是我的剧本没有跑......我错过了什么?

EDIT1 - cat / etc / crontab

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

1 个答案:

答案 0 :(得分:0)

您可以在crontab

中简单地调用python
* * * * * [path/to/py/executable] [path/to/py/script]

请记住,由于cron环境中的受限变量,请指定可执行文件的完整路径。