System.CommandLine选项Option
前一篇简单看了一下CommandLine命令的使用,其实在一个命令行工具中,还有一个重要的点,那就是选项——Option,选项是为命提供参数,就好像C#中方法,Command就像方法,Option就像方法的参数,说到参数就有参数类型,形参(形式参数名称),同理,CommandLine也有,看一个带Option的例子:
//创建根命令
var rootCommand = new RootCommand("这是一个命令行工具:旦猫");
rootCommand.SetHandler(() =>
{Console.WriteLine("欢迎使用《旦猫》");
});
//创建子命令 show
var showCommand = new Command("show", "显示一些信息");
//创建子命令选项 times 别名 t
var timesOption = new Option<int>(name: "--times", description: "显示的次数", getDefaultValue: () => 1)
{IsHidden = true,
};
timesOption.AddAlias("-t");
//添加选项到show命令中
showCommand.AddOption(timesOption);
//设置命令show执行的动作,这是带上times参数,类型为整型
showCommand.SetHandler((int times) =>
{for (var i = 0; i < times; i++){Console.WriteLine($"这是《旦猫》的show命令,显示次数={i}");}
}, timesOption);
//添加命令show到 根命令中
rootCommand.Add(showCommand);
await rootCommand.InvokeAsync(args);
选项可以添加别,添加描述,设置默认值 ,还设置是否可以隐藏,或是必填,选项会在命令的执行方法SetHandler接收。
运行结果,-t 5,循环5次;如果选项参数的类型不对,会有提示;不输入选项参数,默认直为1,这里很友好的提供了一个Func<int>,而不是一个值,因为这个默认值可能依赖其他资源信息计算出来,而不是一个常量。
System.CommandLine选项Option相关推荐
- Mysql:命令选项、配置选项、(全局、会话)系统变量、状态变量:命令选项...
Server Command Options --help, -? Command Line Format -? Config File Format help Display a short hel ...
- java命令行选项6_6.jdk命令行工具
名称 主要功能 jps JVM Process Status Tool,显示指定系统内所有HotSpot虚拟机进程 jstat JVM Statistics Minitoring Tool,用于收集H ...
- windows Installer(msiexec.exe)命令行选项
Msiexec.exe用来解释和安装windows下的安装程序(*.msi) .以下适用与3.0以后的版本. 一 Msiexec.exe的标准命令行参数,区分大小写. Option Parameter ...
- 字选项套接字选项-java教程
今天一直在研究字选项之类的问题,现在正好有机会和大家分享一下. ================================================ 套接字机制供给了两个套接字选项接口来 ...
- jquery操作select option使用小结
2019独角兽企业重金招聘Python工程师标准>>> 1.获取选中select的value和text,代码如下: <select id="mySelect" ...
- Makefile选项 CFLAGS LDFLAGS
makefile内嵌隐含规则的命令中,所使用的变量都是预定义的变量.我们将这些变量称为"隐含变量".这些变量允许对它进行修改:在Makefile中.通过命令行参数或者设置系统环境变 ...
- 【响应式Web前端设计】new Option()函数的作用(三区联动)
在做三级联动的时候遇见了这个函数,对函数的用法进行一下小总结,不太详细,敬请谅解. 作用:用于创建一个新的选项 Option()构造函数接受两个参数:文本(text)和值(value);第二个参数可选 ...
- js动态添加,删除option及add的使用方法
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...
- Intel Realsense D435 pyrealsense2 get_option_description() rs.option中获取参数描述
通过get_option_description()函数能够打印rs.option中的参数描述,如: sensor = pipeline.get_active_profile().get_device ...
最新文章
- Leetcode 53 最大子串和
- 商汤科技2020数据分析师0820笔试题目整理
- 谁适合做Scrum Master?
- Babel 6.25 版本发布,JavaScript 编译器
- log4j 配置文件示例_Log4j2示例教程–配置,级别,附加程序
- java SimpleDateFormat类浅析
- Quartz.Net定时任务时间表达式设置
- 四种软件开发模式(瀑布、迭代、螺旋、敏捷),对比分析
- 人的命,三分天注定,七分靠打拼,有梦就会红,爱拼才会赢
- javaweb——jsp动作标签
- postgresql下载linux版本
- mysql 联合主键 自增_mysal 数据库联合主键自增问题
- 计算机网络 实验三 网络互联与路由协议配置
- CVE-2022-1162 Gitlab 硬编码漏洞分析
- Golang连接kafka报错: Errorkafka: client has run out of available brokers to talk to
- Google的技术构架 (精心整理版)
- Oracle数据库入门
- 东南大学计算机网络实验报告三,东南大学计算机网络第三次实验报告.docx
- 01【ArcGIS Pro SDK for Microsoft .NET】环境搭建及Demo创建
- 2、编译、交叉编译概念小记
热门文章
- .COMBO勒索病毒解密恢复 .xx4444 勒索病毒数据库恢复 .ALCO勒索病毒解密恢复
- 声源近场与远场定位及方法
- VMware清理Linux虚拟机硬盘
- 《Federated_Machine_Learning:Concept_and_Applications》精读
- MSK的CPM调制和I-Q调制
- 前端改变this指向的方法有哪些?如何判断this指向?
- java面试题怎么背?java面试题有哪些?
- 四个小问题,简单解释一下 tomcat 和servlet 的关系
- oracle form 6i菜单模块,利用DDE技术实现ORACLE FORMS 6i 中打开文件(如:EXCEL、WORD、图片、网页)的功能...
- 从汇编角度看一个C函数调用