繁体   English   中英

python - 用于运行脚本的crontab

[英]python - crontab to run a script

我是python的新手,我正在尝试通过python脚本创建一个cronjob,但我不断收到错误。 任何帮助将非常感谢它,告诉我我做错了什么?

谢谢

python脚本

from crontab import CronTab

cron = CronTab(user=True)

job = cron.new(command='python /Users/<useraccount>/Desktop/my_script.py')
job.minute.on(2)
job.hour.on(12)

cron.write()

错误:

Traceback (most recent call last):
  File "/Users/<useraccount>/Desktop/01-python-crontab.py", line 3, in <module>
    cron = CronTab(user=True)
TypeError: __init__() got an unexpected keyword argument 'user'

这是问题:

出现错误:TypeError: init ()只接受2个参数

documentaton: https//pypi.python.org/pypi/python-crontab帮助解决了这个问题。

原因:1 - crontab安装不是python-crontab

这是完成的代码:

def main(): 
    from crontab import CronTab

    cron = CronTab(user=True)

    job = cron.new(command='python /opt/my_script.py')
    job.minute.on(2)
    job.hour.on(12)

    cron.write()

if __name__ == "__main__":
  main()

您可能正在使用旧版本的crontab(请参阅此处1.4.1文档)。 您可以使用以下命令升级到最新版本的python-crontab:

pip install python-crontab --upgrade

或者从这里下载1.9.3版本并安装它。

如果要使用旧版本,可以传入username作为参数,示例 -

cron = CronTab('<username>')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM