自动设置 cron bash 脚本?

发布于 2024-11-09 04:17:36 字数 59 浏览 0 评论 0原文

如何使一些脚本根据从数据库或其他方式获取的时间自动设置其执行?

有什么简单明了的例子吗?

How to make some script to auto set it's execution based on some time it gets from database or some other way?

Any simple, plain example for that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

赤濁 2024-11-16 04:17:36

假设:

  • 您有一个脚本,从数据库中选择执行日期和命令,
  • 该脚本的输出格式为: [[CC]YY]MMDDhhmm command_name and_args

例如,这将读取来自标准输入的一对“日期”“命令”:

while read exectime command
do
    echo "$command" | at -t "$exectime"
done

像这样使用它:

/path/to/script_select_from_database | ./the_above_script

或者这个

exectime="$1"
shift
echo "$@" | at -t "$exectime"

“调用它”

./this_script `/path/to/script_select_from_database`

将两者组合到一个脚本和/或任何其他变体中...

脚本将您的命令排队以使用 at 命令,请参阅 man at

Assumptions:

  • you have a script what selecting the execution date and the command from the database
  • the output format from this script is: [[CC]YY]MMDDhhmm <space> command_name and_args

For example this will read pairs of "date" "command" from the standard input:

while read exectime command
do
    echo "$command" | at -t "$exectime"
done

Use it like:

/path/to/script_select_from_database | ./the_above_script

or this one

exectime="$1"
shift
echo "$@" | at -t "$exectime"

invoke it"

./this_script `/path/to/script_select_from_database`

combine both to one script, and/or any other variation...

The scripts queue your commands for the execution with the at command. see man at.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文