node.js中使用yargs来处理命令行参数

时间: 2019-01-14阅读: 1515标签: 命令

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);

  

站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/1822

每个Web开发者都该了解的12条命令行

在开发者的弹药箱里,命令行是最具生产力的工具之一。掌握它们可以给你的工作流程带来非常积极的影响。因为,许多日常任务都可以用一条命令然后按回车来解决。

10个常用Nginx 常用命令

Nginx 是一个免费、开源、高性能、可伸缩、可靠、功能全面且流行的 HTTP和反向代理服务器,一个邮件代理服务器,以及通用的 TCP/UDP 代理服务器。

Linux中强大的top命令

top命令算是最直观、好用的查看服务器负载的命令了。它实时动态刷新显示服务器状态信息,且可以通过交互式命令自定义显示内容,非常强大。

Vim 常用操作命令整理

vim xxx,vim +num xxx 命令行打开文件,vim + filename 启动跳到文件结尾,vim +143 filename 打开跳到143行 调试代码有用,vim +/search-term filename 跳到第一个匹配

CURL常用命令使用

此篇主要是记录日常使用时用到的curl命令的参数和示例。不会像-h一样示例

7大Git实用技巧和命令总结

Git 是一个非常强大的工具,它包含丰富的工具用以维护项目。本文介绍了一些 Git 日常使用过程中的实用技巧和命令,希望这些内容能够对大家有所帮助

简洁明了的Linux常用命令

ls 命令查看当前目录下可见的文件、文件夹及其相关权限 常用参数:-l 列表式查看 -al 查看所有,包括隐藏的文件、文件夹 ;mkdir 创建文件夹常用参数 : 直接接文件夹名称 ;pwd 显示当前工作目录

cmd创建文件命令

最常用的是echo命令,此例子表示把字母a和回车换行覆盖输出到a.txt(如果a.txt原来已有内容则覆盖掉原来的内容),如果追加内容,可以使用>>,如echo b>>a.txt,表示把b和回车换行追加到文件末尾。

非常实用的9大网络命令

ping 是个使用频率极高的实用程序,主要用于确定网络的连通性。这对确定网络是否正确连接,以及网络连接的状况十分有用。简单的说,ping 就是一个测试程序,如果 ping 运行正确,大体上就可以排除网络访问层、网卡、Modem 的输入输出线路

Javascript 实践中的命令模式

「命令模式」将「请求」封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象,同时支持可撤消的操作。这里的「请求」的定义,并不是我们前端常说的「Ajax 请求」,而是一个「动作请求」,也就是发起一个行为。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!