从命令行运行 Node.js 脚本

运行 Node.js 程序的常用方法是在全局安装 Node.js 后,运行全局可用的 node 命令,并传递要执行的文件的名称。

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

node app.js

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

#!/usr/bin/node

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

#!/usr/bin/env node

// your javascript code

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

chmod u+x app.js

运行命令时,请确保您位于包含 app.js 文件的同一目录中。

将字符串作为参数传递给 node 而不是文件路径

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

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

node -e "console.log(123)"

自动重启应用程序

从 nodejs V16 开始,有一个内置选项可以在文件更改时自动重启应用程序。这对于开发目的很有用。要使用此功能,您需要将 --watch 标志传递给 nodejs。

node --watch app.js

因此,当您更改文件时,应用程序将自动重启。阅读 --watch 标志文档