node作为php中转带参数,node.js 如何完美的从命令行接收参数所传递进来的值

evn.js

#!/usr/bin/env node

// 简单版本, 根据需要自己修改下

function Program() {

let $argvs = []

let _this = this

this.options = function (argv) {

$argvs.push(argv)

return this

}

this.getOptions = function () {

console.log($argvs.toString());

}

this.parse = function (processArgv) {

$argvs.forEach(item => {

let option = item.toLocaleLowerCase()

_this[option] = (function () {

let index = processArgv.indexOf(option)

if (index === 2) {

return true

} else if (index !== -1) {

console.log('您需要的参数应该是执行文件后的第一个参数');

return false

} else {

return false

}

})()

})

}

}

// 使用方法

let program = new Program()

// 定义参数

program.options('prod').options('dev').parse(process.argv)

if (program.prod) {

console.log('--prod');

// todo 执行相关任务

}

if (program.dev) {

console.log('--dev')

// todo 执行相关任务

}

终端下执行:

$ chmod 755 env.js

$ env.js dev prod

--prod

更多有意思的方式可参考阮一峰的博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值