我想每隔 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
,我会看到这些线路。
但是我的脚本没有运行..我错过了什么?
编辑1 - 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 )
#
您可以在 crontab 中简单地调用 python
* * * * * [path/to/py/executable] [path/to/py/script]
由于 cron 环境中的变量受限,请记住指定可执行文件的完整路径。
你能解决吗?我有同样的问题@harley