如何运行Node.js脚本及读取环境变量

简介: 如何运行Node.js脚本及读取环境变量

1、如何从CLI 运行Node.js 脚本

运行Node.js程序的通常方法是运行全局可用的Node命令(一旦安装Node.js),并传递要执行的文件的名称。

如果您的主要Node.js应用程序文件是app.js,您可以通过键入以下内容来调用它:

1. // 简单示例
2. let test = "app.js content";
3. console.log(test);
node app.js

您明确地告诉shell使用node运行您的脚本。您也可以使用“shebang”行将这些信息嵌入到您的JavaScript文件中。“shebang”是文件中的第一行,告诉操作系统要使用哪个解释器来运行脚本。下面是JavaScript的第一行:

#!/usr/bin/node

上面,我们明确给出了解释器的绝对路径。并不是所有的操作系统都在bin文件夹中有节点,但所有操作系统都应该有env。您可以告诉操作系统以节点为参数运行env:

1. #!/usr/bin/env node
2. // your code

要使用shebang,您的文件应该具有可执行权限。您可以通过运行以下命令授予app.js可执行权限:

chmod u+x app.js

2、将字符串作为参数传递到节点,而不是文件路径

要将字符串作为参数执行,可以使用-e,-eval“script”。将以下参数求值为JavaScript。REPL中预定义的模块也可以在脚本中使用。

在Windows上,使用cmd.exe单引号将无法正常工作,因为它只识别双引号。在Powershell或Git bash中,双引号和单引号都可用。

node -e "console.log(123)"

3、自动重新启动应用程序

每当应用程序发生更改时,都必须在bash中重新执行node命令。要自动重新启动应用程序,请使用nodemon模块。

将nodemon模块全局安装到系统路径:

npm i -g nodemon

您也可以将nodemon作为开发依赖项安装:

npm i --save-dev nodemon

可以通过在npm脚本(如npm start)中调用nodemon或使用npx nodemon来运行nodemon的本地安装。

使用nodemon命令和应用程序的文件名运行应用程序:

nodemon app.js

4、如何从Node.js中读取环境变量

Node.js的进程核心模块提供了env属性,该属性承载了进程启动时设置的所有环境变量。

USER_ID=123 USER_KEY=key123 node app.js

这将传递用户user_ID作为123,传递user_KEY作为key123。这适用于测试,但对于生产,您可能会配置一些bash脚本来导出变量。

注意:流程不需要“require”,它是自动可用的。

下面是一个访问USER_ID和USER_KEY环境变量的示例,我们在上面的代码中设置了这些变量。

1. process.env.USER_ID; // "123"
2. process.env.USER_KEY; // "key123"

以同样的方式,您可以访问您设置的任何自定义环境变量。

如果节点项目中有多个环境变量,也可以在项目的根目录中创建.env文件,然后在运行时使用dotenv包加载它们。

1. # .env file
2. USER_ID="123"
3. USER_KEY="key123"
4. NODE_ENV="development"

在文件中获取:

1. require('dotenv').config();
2. process.env.USER_ID; // "123"
3. process.env.USER_KEY; // "key123"
4. process.env.NODE_ENV; // "development"

如果不想在代码中导入包,也可以使用node -r dotenv/config index.js命令运行js文件。

相关文章
|
28天前
|
机器学习/深度学习 Kubernetes 监控
Kubernetes 节点故障自愈方案:结合 Node Problem Detector 与自动化脚本
本文深入探讨了Kubernetes节点故障自愈方案,结合Node Problem Detector(NPD)与自动化脚本,提供技术细节、完整代码示例及实战验证。文章分析了硬件、系统和内核层面的典型故障场景,指出现有监控体系的局限性,并提出基于NPD的实时事件捕获与自动化诊断树的改进方案。通过深度集成NPD、设计自动化修复引擎以及展示内核死锁恢复的实战案例,文章详细说明了自愈流程的实现步骤与性能优势。此外,还提供了生产环境部署指南、高可用架构设计及安全防护措施,并展望了机器学习增强故障预测和混沌工程验证的进阶优化方向。全文约1.2万字,适合希望提升Kubernetes集群稳定性的技术人员阅读。
|
5月前
|
JavaScript Shell C#
多种脚本批量下载 Docker 镜像:Shell、PowerShell、Node.js 和 C#
本项目提供多种脚本(Shell、PowerShell、Node.js 和 C#)用于批量下载 Docker 镜像。配置文件 `docker-images.txt` 列出需要下载的镜像及其标签。各脚本首先检查 Docker 是否安装,接着读取配置文件并逐行处理,跳过空行和注释行,提取镜像名称和标签,调用 `docker pull` 命令下载镜像,并输出下载结果。使用时需创建配置文件并运行相应脚本。C# 版本需安装 .NET 8 runtime。
282 2
|
8月前
|
JSON 移动开发 JavaScript
在浏览器执行js脚本的两种方式
【10月更文挑战第20天】本文介绍了在浏览器中执行HTTP请求的两种方式:`fetch`和`XMLHttpRequest`。`fetch`支持GET和POST请求,返回Promise对象,可以方便地处理异步操作。`XMLHttpRequest`则通过回调函数处理请求结果,适用于需要兼容旧浏览器的场景。文中还提供了具体的代码示例。
133 5
在浏览器执行js脚本的两种方式
|
10月前
|
存储 JavaScript API
Node.js 读取环境变量
Node.js 读取环境变量
228 58
|
8月前
|
机器学习/深度学习 自然语言处理 前端开发
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
1173 1
|
10月前
|
前端开发 JavaScript Java
JavaScript的运行原理
JavaScript 的运行原理包括代码输入、解析、编译、执行、内存管理和与浏览器交互几个步骤。当打开网页时,浏览器加载 HTML、CSS 和 JavaScript 文件,并通过 JavaScript 引擎将其解析为抽象语法树(AST)。接着,引擎将 AST 编译成字节码或机器码,并在执行阶段利用事件循环机制处理异步操作,确保单线程的 JavaScript 能够高效运行。同时,JavaScript 引擎还负责内存管理和垃圾回收,以减少内存泄漏。通过与 DOM 的交互,JavaScript 实现了动态网页效果,提供了灵活且高效的开发体验。
|
11月前
|
监控 JavaScript Linux
[译] 在生产环境运行 PM2 & Node.js
[译] 在生产环境运行 PM2 & Node.js
|
10月前
|
JavaScript 前端开发
用JavaScript脚本将当地时间转换成其它时区
用JavaScript脚本将当地时间转换成其它时区
|
11月前
|
JavaScript Windows
【Azure 应用服务】用App Service部署运行 Vue.js 编写的项目,应该怎么部署运行呢?
【Azure 应用服务】用App Service部署运行 Vue.js 编写的项目,应该怎么部署运行呢?
130 0
|
11月前
|
JavaScript 前端开发 C++
【Azure Function】调试 VS Code Javascript Function本地不能运行,报错 Value cannot be null. (Parameter 'provider')问题
【Azure Function】调试 VS Code Javascript Function本地不能运行,报错 Value cannot be null. (Parameter 'provider')问题

热门文章

最新文章