如何设置cron作业正确路径以运行node.js脚本?

问题描述

我正在尝试使Node.js文件自动化以按计划运行。 但是我无法正常工作。

我正在使用 root 用户

这是从登录获取文件位置的路径: nodejs_projects/amazon_search_v2

以下是登录位置的pwd输出

root@project:~# pwd
/root

这是我在 crontab 添加的脚本:

0 4,12,20 * * * node nodejs_projects/amazon_search_v2/searchItemsApi.js  >/dev/null 2>&1

在这里想念什么?

解决方法

  • 您必须像这样提供指向节点square(alpha) + square(beta) (3*square(betaR_red)) 2/pow(gammaBlue,3)) -square(epsilon_gamma)+5 的完整路径。

/usr/local/bin/node

  • 更好的方法是使用 node-cron 库。
0 4,12,20 * * * /usr/local/bin/node nodejs_projects/amazon_search_v2/searchItemsApi.js  >/dev/null 2>&1
,

这个为我工作:

* 0,8,16 * * * cd ~/nodejs_projects/amazon_search_v2/ && /usr/bin/node searchItemsApi.js >/dev/null 2>&1

如此处所述: Link

在柯蒂斯·肖的回答中。 使用which node查找节点可执行路径,并使用cd进入文件夹并防止相对路径问题。