如何使用 process.argv 将命令行参数传递给 npm 脚本?

发布于 2025-01-09 05:12:51 字数 259 浏览 0 评论 0原文

我有这样的 package.json:

  "scripts": {
    "start": "node list_users.js",
}

和 list.js 文件,

    const process = require('process');
var args = process.argv;

当我运行 npm start 时,我想将其传递给 JS 文件,我该怎么做?

I have package.json like this:

  "scripts": {
    "start": "node list_users.js",
}

and list.js file

    const process = require('process');
var args = process.argv;

when I run npm start I want to pass this to pass to JS file, How can I do that?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

往昔成烟 2025-01-16 05:12:51

npm 脚本的执行遵循以下语法:npm run; [--]

在您的情况下,这是:npm run start --first-argument first或使用启动脚本的简写npm start --first-argument first。请注意,括号中的部分是可选的。

这是 2014 年的 PR,它增强了 npm 以实现此功能。另外,这个问题已经回答了

Execution of npm scripts follows this syntax: npm run <command> [-- <args>].

In your case, this is: npm run start --first-argument first or using the shorthand for the start script npm start --first-argument first. Mind that the part in brackets is optional.

This is the according PR from 2014 which enhanced npm to enable this. Also, this question already been answered.

一袭白衣梦中忆 2025-01-16 05:12:51

如果您想传递 npm 脚本,只需添加值作为参数即可。
示例:

修改您的 list_users.js

var args = process.argv;
console.log(args.slice(2));

运行命令 npm start user1 user2 user3

该命令打印:-

> node list_users.js "user1" "user2" "user3"

[ 'user1', 'user2', 'user3' ]

If you want to pass through npm script then just add the values as arguments.
Example:

Modify your list_users.js

var args = process.argv;
console.log(args.slice(2));

Run command npm start user1 user2 user3

The command prints:-

> node list_users.js "user1" "user2" "user3"

[ 'user1', 'user2', 'user3' ]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文