【问题标题】:adjusting crontab job times调整 crontab 作业时间
【发布时间】:2014-02-12 01:02:13
【问题描述】:

我正在尝试设置一个 crontab 作业: 我现在通过阅读文档和网络得到了这个。

30 12 * * * reboot 
40 12 * * * python /home/dev/workspace/Testing/__init__.py 
50 12 * * * poweroff

有没有办法随机改变执行时间,让它在下午 12:00 到下午 1:00 之间随机运行?

我也可以将关机与 python 脚本成功完成联系起来吗?

我想我应该澄清一下,我想关闭我的计算机并让它自动启动运行 python 脚本,然后自行关闭。

谢谢

【问题讨论】:

    标签: python ubuntu crontab


    【解决方案1】:

    你为什么要从 Crontab 运行它?如果b 应该在a 之后运行,cb 之后运行,那么只需使用a; b; c 依次运行它们,无论其中任何一个需要多长时间。

    无论打算解决什么问题,从 Cron 重新启动都不会让我觉得很正常,但是如果您真的想这样做,您可以安排重新启动,然后让 @reboot cron 作业主人回来时接机。 (如果主机也可以在其他时间重新启动,您可以添加一个简单的检查以中止。)

    所以;

    30 12 * * * reboot
    @reboot my-reboot-script
    

    my-reboot-script 可能类似于

    #!/bin/bash
    
    case $(date +%H) in 12) ;; *) exit 0;; esac
    sleep $[ $RANDOM % 3600 ]   # bash only
    python /home/dev/workspace/Testing/__init__.py
    shutdown -P +5
    

    我将 poweroff 命令更改为 shutdown -P +5,以便在实际关闭之前为所有登录用户提供 5 分钟的宽限期。我不了解你,但我当然不希望有一台在我使用时会在没有警告的情况下关机的电脑。

    【讨论】:

    • 我希望能够关闭我的计算机并让它自动启动运行脚本直到完成然后关闭。 crontab 是错误的工具吗?它似乎是用来安排作业的。
    • Cron 无法让您的计算机在给定时间启动。
    • 那么我应该查找什么来实现我想要的?
    • 快速谷歌搜索出现askubuntu.com/questions/8845/…
    猜你喜欢
    • 2011-06-20
    • 1970-01-01
    • 2019-10-01
    • 2023-03-22
    • 1970-01-01
    • 2020-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多