【问题标题】:Execute python from Crontab in AWS Lightsail在 AWS Lightsail 中从 Crontab 执行 python
【发布时间】:2020-07-10 01:29:26
【问题描述】:

我试图从 AWS Ligthsail 的 linux 终端运行 Python 脚本,但没有成功。

I tried multiple options and still can't get it to run:

* * * * *  /usr/bin/python3 path/to/my/script.py

and within the .py script

#/usr/bin/python3

I also tried:
* * * * * /usr/bin/python3 path/to/my && ./script.py

【问题讨论】:

    标签: python amazon-web-services cron amazon-lightsail


    【解决方案1】:

    我认为问题出在您的 cron 计划表达式中,它应该是五颗星 *,就像 * * * * * 每分钟执行一次,但在您的示例中,您只使用了四颗星,这是错误的。

    在 cron 表达式中,每行有五个时间和日期字段,后跟一个用户名(如果这是系统 crontab 文件),然后是一个命令。

    时间和日期字段是:

    1. 分钟:0-59
    2. 小时:0-23
    3. 一个月中的某天:1-31
    4. 月:1-12(或姓名)
    5. 星期几:0-7(0 或 7 是星期日,或使用名称)

    您可以阅读更多here,您可以使用此website 来生成和体验 crontab 调度表达式。

    所以您可能需要更新您的 cron 计划表达式:

    * * * * * /usr/bin/python3 path/to/my/script.py
    

    【讨论】:

    • 对不起,我放了 4 *,我试过 5 * 但它也不起作用。
    • 好吧..这很奇怪!您是否尝试使脚本可执行:sudo chmod u+x script.py 并将 #!/usr/bin/env python3 添加到脚本的开头,而不是在 cron 作业中使用此 * * * * * path/to/my/script.py
    【解决方案2】:

    当放置 cron 的结果时,我可以看到在 .py 中我必须指定一个路径。现在可以了!

    * * * * * sudo /usr/bin/python3 path/to/my/script.py >> path/to/my/script.py/out.txt  2>&1
    

    【讨论】:

    • 就是这样 :D 你没有提到你的脚本有输出
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-16
    • 2020-03-16
    • 2019-01-07
    相关资源
    最近更新 更多