雖然如今是圖形化大行其道的時代,但讓程序支持命令行啓動對於專業的領域仍是有很多需求的。.net自己並無內置對命令行解析的支持,我以前就寫過一篇文章讓.Net程序支持命令行啓動介紹了幾個第三方的命令行項目。html
今天發現了一個微軟自家的命令行工具: CommandLineUtils,用它能夠快速開發專業的命令行程序。這個包在Nuget上能夠下載:git
Microsoft.Extensions.CommandLineUtilsgithub
它本是微軟給.net core準備的,依賴於.net standard庫。得益於該項目開源的緣由,對於.net 4.5如下的用戶,有人把它改形成了.net 2.0環境也能使用的庫:工具
Net20.Extensions.CommandLineUtilspost
一個簡單的示例以下:spa
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);
} .net
執行效果以下: 命令行
關於這個庫,網上也有很多文章介紹它,感興趣的朋友能夠看一下 htm