node.js使用yargs处理命令行参数操作示例

 更新时间:2020年02月11日 10:05:43   作者:怀素真  
这篇文章主要介绍了node.js使用yargs处理命令行参数操作,结合实例形式分析了yargs库的安装及node.js使用yargs处理命令行参数具体实现技巧,需要的朋友可以参考下

本文实例讲述了node.js使用yargs处理命令行参数。分享给大家供大家参考,具体如下:

yargs库能够方便的处理命令行参数。

一、安装 yargs

npm install yargs --save

二、读取命令行参数

const yargs = require('yargs');
let argv = yargs.argv;
console.log(argv);

argv 对象用来保存命令行参数,传递参数时,参数名以 -- 开头,中间使用 = 或 空格,然后接上值 。

argv 有一个 下划线 属性,该属性用来获取非连词线开头的参数

const yargs = require('yargs');
let argv = yargs.argv;
console.log(argv._);

还可以给参数名取一个别名。

const yargs = require('yargs');
let argv = yargs
  .alias('n', 'name')
  .alias('s', 'save')
  .alias('w', 'width')
  .argv;
console.log(argv);

.demandOption(key, msg) 是否必须填写

.default(key, value, [description]) 设置默认值

.describe(key, desc) 命令描述信息

const yargs = require('yargs');
let argv = yargs
  .alias('s', 'src')
  .alias('d', 'dst')
  .demandOption(['s', 'd'], 's 与 d 必须填写')
  .default('s', 'a.txt')
  .default('d', 'b.txt')
  .describe('s', '源文件')
  .describe('d', '目标文件')
  .argv;
console.log(argv);

我们可以通过 .option(key, [opt]) 配置所有设置

const yargs = require('yargs');
let argv = yargs
  .option('s', {
    alias: 'src',
    demandOption: true,
    default: 'a.txt',
    describe: '源文件',
    type: 'string'
  })
  .option('d', {
    alias: 'dst',
    demandOption: true,
    default: 'b.txt',
    describe: '目标文件',
    type: 'string'
  })
  .argv;
console.log(argv);

有些时候我们只想知道某些参数有没有设置,是 true 或是 false。

通过 .boolean(key) 解析参数为布尔值。

const yargs = require('yargs');
let argv = yargs
  .alias('s', 'save')
  .boolean(['s'])
  .argv;
console.log(argv);

.usage() 用法格式

.example(cmd, desc) 提供例子

.help() 帮助信息

.epilog(str) 在帮助信息尾部显示

const yargs = require('yargs');
let argv = yargs
  .alias('s', 'save')
  .usage('Usage: --s <filename>')
  .example('--s a.txt', '设置源文件')
  .epilog('copyright')
  .help('info')
  .argv;
console.log(argv);

希望本文所述对大家node.js程序设计有所帮助。

相关文章

  • 使用Node.js实现RESTful API的示例

    使用Node.js实现RESTful API的示例

    Node.js可以用很少代码简单地实现一个Web服务,并且它有一个非常活跃的社区,通过Node出色的包管理机制(NPM)可以非常容易获得各种扩展支持。 对简单的应用场景Node.js实现REST是一个非常合适的选择。 本文介绍如何用Node.js实现REST服务。
    2017-08-08
  • NodeJs form-data格式传输文件的方法

    NodeJs form-data格式传输文件的方法

    这篇文章主要介绍了NodeJs form-data格式传输文件的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • node.js中的console用法总结

    node.js中的console用法总结

    这篇文章主要通过几个具体的实例总结介绍了node.js中的console用法,需要的朋友可以参考下
    2014-12-12
  • 深入理解nodejs搭建静态服务器(实现命令行)

    深入理解nodejs搭建静态服务器(实现命令行)

    这篇文章主要介绍了深入理解nodejs搭建静态服务器(实现命令行),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • nvm mac 环境搭建过程

    nvm mac 环境搭建过程

    这篇文章主要为大家介绍了nvm mac 环境搭建过程示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • 理解 Node.js 事件驱动机制的原理

    理解 Node.js 事件驱动机制的原理

    本篇文章主要介绍了理解 Node.js 事件驱动机制的原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • node.js回调函数之阻塞调用与非阻塞调用

    node.js回调函数之阻塞调用与非阻塞调用

    本文重点给大家介绍node.js回调函数之阻塞调用和非阻塞调用,涉及到node.js回调函数的相关知识,对本文感兴趣的朋友一起学习吧
    2015-11-11
  • 使用Node.js实现Clean Architecture方法示例详解

    使用Node.js实现Clean Architecture方法示例详解

    这篇文章主要为大家介绍了使用Node.js实现Clean Architecture方法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • node实现批量上传本地图片转为图片CDN的项目实践

    node实现批量上传本地图片转为图片CDN的项目实践

    本文主要介绍了node实现批量上传本地图片转为图片CDN的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • 详解node.js搭建代理服务器请求数据

    详解node.js搭建代理服务器请求数据

    本篇文章主要介绍了详解node.js搭建代理服务器请求数据,具有一定的参考价值,有兴趣的可以了解一下。
    2017-04-04

最新评论