【问题标题】:Running a Node.js script between certain hours everyday每天在特定时间运行 Node.js 脚本
【发布时间】:2020-11-01 22:19:00
【问题描述】:

我正在尝试每天在上午 9 点到下午 5 点之间运行一个 Javascript 文件,我想知道是否有使用 cron 或其他方法的正确方法。下午 5 点,我希望运行脚本结束,就像我在终端中按 ctrl-c 一样。第二天早上,它会自动重启。

【问题讨论】:

    标签: javascript node.js cron


    【解决方案1】:

    一个选项是为您的脚本 like this 创建一个 systemd 服务文件,然后您可以使用 cron 在需要的时间启动和停止该服务。

    【讨论】:

      【解决方案2】:

      这可以通过将任务分为两个步骤来完成

      1. 将安排一个cron 作业,每天早上 9 点启动节点进程。为此,假设您有一个名为 script.js 的节点文件,它的位置是 /home/user/example/script.js,那么将使用以下命令来运行它每天每天上午 9 点
      * 9 * * * /usr/local/bin/node /home/user/example/script.js
      
      1. 现在每天下午 5 点关闭脚本,这可以使用setTimeout 函数隐式完成。下面是要在 script.js 中编写的代码
      setTimeout((function() {
      return process.exit(1);}), 28,8000,000);//28,8000,000 Milliseconds
      

      这样,script.js 将在每天上午 9 点开始执行,并在下午 5 点停止。

      【讨论】:

      • 你不应该把逗号放在毫秒内,因为它会被读取为多个参数。
      猜你喜欢
      • 1970-01-01
      • 2015-08-18
      • 1970-01-01
      • 1970-01-01
      • 2017-09-25
      • 2021-05-04
      • 2020-08-28
      • 2021-01-04
      • 2013-04-18
      相关资源
      最近更新 更多