新贵 运行 特定时间之间的脚本
upstart run script between particular time
我想 运行 使用 upstart 在两个小时内编写一个脚本:
- 开始于:9h00
- 停止时间:23 点 30 分
这是我的新贵:
author "bakka"
start on runlevel [2345]
stop on runlevel [!2345]
respawn
script
H_BEGIN="905"
H_END="2330"
H_NOW=$(date +%k%M)
if [[ ${H_NOW} -gt ${H_BEGIN} && ${H_NOW} -lt ${H_END} ]]; then
exec my_python_script
fi
end script
但它似乎不符合条件,即使我删除了 "start on runlevel [2345]"
我已经看过这里了:http://upstart.ubuntu.com/faq.html#replace-cron
You'd be able to have a service only running between particular times,
or on particular days, etc.
Blockquote
但是没说的很清楚
如果有人知道如何使用 upstart 指定启动某项的间隔时间,那就太好了。
这从未作为 upstart 的一部分实施。我建议将非常简单的工具 snooze 与 upstart 结合使用。这就是我 运行 我的 cron.{hourly,daily,weekly,monthly} void linux.
脚本的方式
对于您的特定情况,在 9:00 开始工作并在 23:30 停止工作,您将使用三个这样的工作:
description "start my service if it is after 9:00 but before 23:30"
emits start-myservice
start on runlevel [2345]
stop on runlevel [!2345]
respawn
exec snooze -H9 -s870 -- initctl emit start-myservice
description "stop my service if it is after 23:30 but before 9:00"
emits stop-myservice
start on runlevel [2345]
stop on runlevel [!2345]
respawn
exec snooze -H23 -M30 -s570 -- initctl emit stop-myservice
description "my service"
start on start-myservice
stop on stop-myservice
respawn
exec my_python_script
我想 运行 使用 upstart 在两个小时内编写一个脚本:
- 开始于:9h00
- 停止时间:23 点 30 分
这是我的新贵:
author "bakka"
start on runlevel [2345]
stop on runlevel [!2345]
respawn
script
H_BEGIN="905"
H_END="2330"
H_NOW=$(date +%k%M)
if [[ ${H_NOW} -gt ${H_BEGIN} && ${H_NOW} -lt ${H_END} ]]; then
exec my_python_script
fi
end script
但它似乎不符合条件,即使我删除了 "start on runlevel [2345]"
我已经看过这里了:http://upstart.ubuntu.com/faq.html#replace-cron
You'd be able to have a service only running between particular times, or on particular days, etc. Blockquote
但是没说的很清楚
如果有人知道如何使用 upstart 指定启动某项的间隔时间,那就太好了。
这从未作为 upstart 的一部分实施。我建议将非常简单的工具 snooze 与 upstart 结合使用。这就是我 运行 我的 cron.{hourly,daily,weekly,monthly} void linux.
脚本的方式对于您的特定情况,在 9:00 开始工作并在 23:30 停止工作,您将使用三个这样的工作:
description "start my service if it is after 9:00 but before 23:30"
emits start-myservice
start on runlevel [2345]
stop on runlevel [!2345]
respawn
exec snooze -H9 -s870 -- initctl emit start-myservice
description "stop my service if it is after 23:30 but before 9:00"
emits stop-myservice
start on runlevel [2345]
stop on runlevel [!2345]
respawn
exec snooze -H23 -M30 -s570 -- initctl emit stop-myservice
description "my service"
start on start-myservice
stop on stop-myservice
respawn
exec my_python_script