例如:

执行命令行,如何获取test.js中后面的参数arg1、arg2、arg3… 

node test.js arg1 arg2 arg3

解决办法:

1.通过process.env

process.env属性返回一个包含用户环境信息的对象

但下面的命令无法通过 process.env 获取。

node test.js a=1


2.通过process.argv
process.argv 返回当前进程的所有命令行参数,返回值是一个数组,前2个元素是node命令路径和被执行的文件路径

process是一个全局对象,argv返回的是一组包含命令行参数的数组。

第一项为”node”,第二项为执行的js的完整路径,后面是附加在命令行后的参数。

test.js

let node = process.argv.splice(0);  // 获取node
let js_name = process.argv.splice(1);	// 获取执行的js的完整路径
let arguments = process.argv.splice(2);		// 参数数组
var arg1 = arguments[0]; // 获取arg1
var arg2 = arguments[1];  // 获取arg2
var arg3 = arguments[2];  // 获取arg3

更多推荐

NodeJS使用process.argv 获取命令行输入参数