如何在特定时间执行重复的 Bash 脚本?

如何在特定时间执行重复的 Bash 脚本?

我如何设置一个脚本在每周二和周四上午 11:50 执行?

我一直在查看该at命令,但我无法想象如何从其man页面上按照我需要的方式使用它。

答案1

at是一次性命令的优秀工具。然而,要同时重复运行一个程序,正确的工具是cron。跑步crontab -e。它将打开一个编辑器。添加此行并保存文件:

50 11 * * 2,4 /path/to/script

/path/to/script该活动将于每周二和周四上午 11:50 运行。crontab在有限的环境中运行程序。所以,script可能需要设置自己的PATH等等。

如果计算机具有正确设置的邮件服务器,则任何输出script都将通过电子邮件发送给拥有该文件的用户crontab。或者,输出将被邮寄到 crontab 文件中 MAILTO 变量指定的地址。man 5 crontab详情请参阅。

上面一行的前五列定义了程序运行的时间。它们的含义被记录man 5 crontab为:

          field          allowed values
          -----          --------------
          minute         0-59
          hour           0-23
          day of month   1-31
          month          1-12 (or names, see below)
          day of week    0-7 (0 or 7 is Sun, or use names)

相关内容