微软官方的.net命令行参数库

虽然现在是图形化大行其道的时代,但让程序支持命令行启动对于专业的领域还是有不少需求的。.net本身并没有内置对命令行解析的支持,我之前就写过一篇文章让.Net程序支持命令行启动介绍了几个第三方的命令行项目。

今天发现了一个微软自家的命令行工具: CommandLineUtils,用它可以快速开发专业的命令行程序。这个包在Nuget上可以下载:

  Microsoft.Extensions.CommandLineUtils

它本是微软给.net core准备的,依赖于.net standard库。得益于该项目开源的原因,对于.net 4.5以下的用户,有人把它改造成了.net 2.0环境也能使用的库:

  Net20.Extensions.CommandLineUtils

一个简单的示例如下:

static void Main(string[] args)
{
    var cmd = new CommandLineApplication();
    var argAdd = cmd.Option("-a | --add <value>""Add a new item"CommandOptionType.SingleValue);

    cmd.OnExecute(() =>
    {
        Console.WriteLine(argAdd.Value());
        return 0;
    });

    cmd.HelpOption("-? | -h | --help");
    cmd.Execute(args);
}

执行效果如下:

  

关于这个库,网上也有不少文章介绍它,感兴趣的朋友可以看一下

原文地址:https://www.cnblogs.com/TianFang/p/8424256.html