使用睡眠命令延迟一个月

问题描述:

我有一台运行计费应用程序的服务器,它生成账单和发票并每​​月发送给注册用户。 我不想每30天手动运行一次。 我希望通过使用像 睡眠30D使用睡眠命令延迟一个月

但它是良好的睡眠命令把这个脚本运行在服务器上永远使睡眠命令运行在后台自动完成这一过程?

操作系统:CentOS 7 目的:运行OpenStack多节点云。

+0

什么操作系统?做这项工作的正确工具似乎是Linux中的一些任务管理器,如crontab。你可能想更新你的问题。 –

+1

“但是,将此脚本永久保存在服务器上是否好 - ”可能不会,因为服务器可能会在30天到期之前重新启动。 Google for“任务调度程序” – Joe

+0

我正在使用CentOS 7并在其上运行OpenStack云。 –

您应该使用crontab在月份的第一天使用参数运行脚本或应用程序。

如果您的管理网站中有任何crontab GUI,请检查firts。 如果没有,你应该有权访问你的服务器的外壳,你应该运行命令crontab -e

它将打开一个文本编辑器,您可以在其中编写计划任务。

这个头贴到顶部看到whay你需要对每列写:

# m  h dom mon dow command 
# *  * * * * Command to be executed 
# -  - - - - 
# |  | | | | 
# |  | | | +----- Day of week (0-7) 
# |  | | +------- Month (1 - 12) 
# |  | +--------- Day of month (1 - 31) 
# |  +----------- Hour (0 - 23) 
# +------------- Min (0 - 59) 

In your case you should write 
0 0 1 * * command_to_run 

首发0它是一分钟
第二0它是小时
1.这是给说你要运行它每个月的第一天
下*表示,将一路跑个月
最后一个*表示,将没有关于它的一周中的一天跑了

最后一个应该是你的命令来运行。

+0

我想如何使用crontabs 。但我想改变目的地。就像现在一样,我通过cronjobs运行的所有命令以电子邮件的形式发送到根目录。我不想那样。我希望它在特定路径或任何目录上运行,我希望输出能够在我所希望的路径中。 –

+0

创建一个shell脚本。在该shell脚本中,添加需要更改路径的'cd'命令,然后'cd'使用需要参数运行应用程序。要更改crontab日志的目标电子邮件地址,请在您的cron行MAILTO = [email protected]之前将其添加到crontab中 – NetVicious