NodeJS yargs 模塊

2018-08-08 16:54 更新

shelljs 只解決了如何調(diào)用 shell 命令,而 yargs 模塊能夠解決如何處理命令行參數(shù)。它也需要安裝。

$ npm install --save yargs

yargs 模塊提供 argv 對(duì)象,用來讀取命令行參數(shù)。請(qǐng)看改寫后的 hello 。

#!/usr/bin/env node
var argv = require('yargs').argv;

console.log('hello ', argv.name);

使用時(shí),下面兩種用法都可以。

$ hello --name=tom
hello tom

$ hello --name tom
hello tom

如果將 argv.name 改成 argv.n,就可以使用一個(gè)字母的短參數(shù)形式了。

$ hello -n tom
hello tom

可以使用 alias 方法,指定 name 是 n 的別名。

#!/usr/bin/env node
var argv = require('yargs')
  .alias('n', 'name')
  .argv;

console.log('hello ', argv.n);

這樣一來,短參數(shù)和長參數(shù)就都可以使用了。

$ hello -n tom
hello tom
$ hello --name tom
hello tom

argv 對(duì)象有一個(gè)下劃線(_)屬性,可以獲取非連詞線開頭的參數(shù)。

#!/usr/bin/env node
var argv = require('yargs').argv;

console.log('hello ', argv.n);
console.log(argv._);

用法如下。

$ hello A -n tom B C
hello  tom
[ 'A', 'B', 'C' ]
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)