gpt4 book ai didi

node.js - 无法使用 Node.js 和 Crontab

转载 作者:行者123 更新时间:2023-12-05 00:39:53 24 4
gpt4 key购买 nike

我知道您可以通过执行以下操作在 Crontab 中运行 Node.js 脚本:

0 * * * * node /path/to/your/script.js

但我想使用 Crontab 运行 Node.js 应用程序,而不是脚本。我创建了一个 Node.js 应用程序,以便使用 Mocha、Chai 和 Selenium 编写一些自动化测试,并且我想使用 Crontab 定期运行它。我该怎么做呢?我目前通过在命令行中编写来运行我的应用程序:

npm run api-pro

其中 api-pro 是我的 package.json 中的一个脚本,它为生产 api 调用一些测试。

请注意,如果我只是尝试使用命令“npm run api-pro”编写 Crontab 作业,它无法识别命令 npm(显然我的计算机中安装了 Node)。

最佳答案

我的猜测是用户 cron 使用的 PATH 没有像你的用户那样配置 PATH,也不知道 node也不是 npm.

您可以尝试使用命令 which node 来了解您的 Node 二进制文件在哪里 (/some/path/to/node)

然后你可以在你的 crontab 中使用绝对路径:

0 * * * * /some/path/to/node /path/to/your/script.js

编辑:

nodenpm 添加到 $PATH 与使用绝对路径之间的区别在于绝对路径适用于一个可执行文件,因为 Linux不必搜索 PATH。添加到 PATH 将使 Linux 识别 nodenpm 就像在您的用户中一样。它们在同一个文件夹中的事实不会影响这一点。

关于node.js - 无法使用 Node.js 和 Crontab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54557146/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com