【问题标题】:Run my python3 program on remote Ubuntu server every 30 min每 30 分钟在远程 Ubuntu 服务器上运行我的 python 程序
【发布时间】:2014-09-25 19:25:28
【问题描述】:

我有正确的 python3 程序,看起来像 *.py。 我有 Ubuntu 14.04 的数字海洋(DO)液滴。 我的程序将消息发布到我的 Twitter 帐户。 我只是将我的 *.py 复制到 DO droplet 上的某个目录中,然后使用 ssh 运行它,一切正常。 但例如,我需要每 15-30 分钟自动发布一次消息(朗姆我的程序)。

我是这一切的新手。 我该怎么办?请按部就班!

【问题讨论】:

  • 你考虑过使用 cron 吗? adminschoice.com/crontab-quick-reference
  • @HiteshDharmadasani A. ) 并非所有操作系统都支持每 2 分钟 /2 或每 10 分钟 /10 之类的重复模式。如果您尝试使用它并且 crontab 抱怨它可能不受支持。

标签: python ubuntu digital-ocean


【解决方案1】:

cron 可能是要走的路——它是为这项任务而构建的。有关详细信息,请参阅此DigitalOcean tutorial

This StackOverflow answer 明确说明在 30 分钟的重复间隔内要输入的内容。

如果您出于某种原因不想使用 cron,您可以执行以下操作:

import time

# Repeat forever
while True:
    post_to_twitter() # Call your function
    # Sleep for 60 seconds / minute * 30 minutes
    time.sleep(60 * 30)

【讨论】:

  • 谢谢!当我的第一个程序“永远重复”时,我可以在这个水滴上使用其他 python 程序吗?服务器资源呢? Cron 或“永远重复”使用更少?
  • 是的,您可以运行其他程序 - 请参阅 here。至于资源,我想 cron 会使用更少。不过,Python 程序正在休眠并且没有做太多事情。
【解决方案2】:

首先安装并启用fcron。然后,sudo -s 进入 root 并运行 fcrontab -e。在编辑器中,输入*/30 * * * /path/to/script.py 并保存文件。如果每 15 分钟一次,则将 30 更改为 15。

【讨论】:

    猜你喜欢
    • 2016-02-05
    • 1970-01-01
    • 2012-03-21
    • 2016-05-26
    • 1970-01-01
    • 1970-01-01
    • 2021-06-13
    • 1970-01-01
    • 2014-04-03
    相关资源
    最近更新 更多