首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何让cron作业运行Node.js脚本从.env文件中读取变量?

如何让cron作业运行Node.js脚本从.env文件中读取变量?
EN

Stack Overflow用户
提问于 2017-05-25 02:05:20
回答 2查看 2.4K关注 0票数 5

我目前有一个运行Node.js脚本的cron作业设置。Node.js脚本使用dotenv包读取具有一些API键的.env文件。

当我从命令行运行Node.js脚本时,可以正确地从.env文件中读取变量,并且可以使用我的Node.js脚本。

但是当cron运行Node.js脚本时,我试图设置的变量返回未定义的。

00 05 * * * /home/michaellee/.nvm/versions/node/v6.10.0/bin/node /home/michaellee/index.js >> /home/michaellee/output.log

.env文件与index.js文件位于同一级别。

cron作业是从用户michaellee使用crontab -e设置的,该用户拥有Ubuntu上的文件。

EN

回答 2

Stack Overflow用户

发布于 2018-06-19 04:20:23

我只是在dotenv config上更改了路径,这对我很有效。

const dotenv = require('dotenv');    
dotenv.config({ path: __dirname + '/../.env' });
票数 9
EN

Stack Overflow用户

发布于 2017-05-25 02:08:47

我认为从.env文件中取出内容并将其加载到JSON文件中不会那么麻烦。然后,您只需require该JSON文件并加载数据即可。很多每个&都不需要任何插件,它可以无缝地与Cron一起工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44165640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档