有没有办法用python包名运行cron任务(在entry_point中指定)?
setup.py
来自setuptools导入设置
from setuptools import setup
setup(
name='myapp-cli',
(..blah..)
packages=[
'myapp_cli'
],
install_requires=['configparser', 'requests'],
entry_points={
'console_scripts': [
'myapp= myapp_cli.main:cli'
]
},
zip_safe=True
)
它适用于shell:
myapp do_stuff
我想在cron任务中按名称运行app,如下所示:
* * * * * /something_here? myapp do_stuff >> myapp.log 2>&1
我无法弄清楚python包entry_point如何工作以及如何在cron中使用它。有可能吗?
答案 0 :(得分:2)
这不是Python问题,而是linux / shell。
修复它的最简单方法可能是使用绝对路径,用于Python和脚本。
假设您的入口点位于/usr/sbin/myapp
(您应该找到which myapp
)
* * * * * /usr/bin/env python /usr/sbin/myapp do_stuff >> myapp.log 2>&1