【发布时间】:2021-09-03 21:13:05
【问题描述】:
我正在尝试使用 Crontab 每 5 分钟运行一次 NodeJs 脚本,但目前失败了。
我注意到当我从文件夹中运行我的脚本时,它运行良好。但是,当我尝试从文件夹外部运行脚本时,它会失败.. 它似乎没有获取 .env 参数?
crontab -e
*/5 * * * * 节点 ~/ls-mongo/updateItems.js
【问题讨论】:
我正在尝试使用 Crontab 每 5 分钟运行一次 NodeJs 脚本,但目前失败了。
我注意到当我从文件夹中运行我的脚本时,它运行良好。但是,当我尝试从文件夹外部运行脚本时,它会失败.. 它似乎没有获取 .env 参数?
crontab -e
*/5 * * * * 节点 ~/ls-mongo/updateItems.js
【问题讨论】:
发生这种情况是因为节点解释器无法找到任何已安装的 npm 依赖项,因为它正在扫描文件夹,您正在为它们运行命令。您可以 cd 进入文件夹,然后运行脚本:
cd ~/ls-mongo && crontab -e */5 * * * * node updateItems.js
【讨论】:
我以前从未见过这种情况,但将以下内容添加到文件顶部是可行的。
process.chdir(__dirname);
【讨论】: