McMaster.Extensions.CommandLineUtils 2.0.1

Command-line parsing API. A community-maintained fork of Microsoft.Extensions.CommandLineUtils, plus extras.
Commonly used types:

McMaster.Extensions.CommandLineUtils.CommandLineApplication
McMaster.Extensions.CommandLineUtils.CommandOption
McMaster.Extensions.CommandLineUtils.IConsole
McMaster.Extensions.CommandLineUtils.ArgumentEscaper

There is a newer version of this package available.
See the version list below for details.
Install-Package McMaster.Extensions.CommandLineUtils -Version 2.0.1
dotnet add package McMaster.Extensions.CommandLineUtils --version 2.0.1
<PackageReference Include="McMaster.Extensions.CommandLineUtils" Version="2.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add McMaster.Extensions.CommandLineUtils --version 2.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Usage

See https://github.com/natemcmaster/CommandLineUtils for more examples.

CommandLineApplication is the main entry point for most console apps parsing.

using System;
using McMaster.Extensions.CommandLineUtils;

public class Program
{
    public static int Main(string[] args)
    {
        var app = new CommandLineApplication();

        app.HelpOption("-h|--help");
        var optionSubject = app.Option("-s|--subject <SUBJECT>", "The subject", CommandOptionType.SingleValue);

        app.OnExecute(() =>
        {
            var subject = optionSubject.HasValue()
                ? optionSubject.Value()
                : "world";

            Console.WriteLine($"Hello {subject}!");
            return 0;
        });

        return app.Execute(args);
    }
}

Usage

See https://github.com/natemcmaster/CommandLineUtils for more examples.

CommandLineApplication is the main entry point for most console apps parsing.

using System;
using McMaster.Extensions.CommandLineUtils;

public class Program
{
    public static int Main(string[] args)
    {
        var app = new CommandLineApplication();

        app.HelpOption("-h|--help");
        var optionSubject = app.Option("-s|--subject <SUBJECT>", "The subject", CommandOptionType.SingleValue);

        app.OnExecute(() =>
        {
            var subject = optionSubject.HasValue()
                ? optionSubject.Value()
                : "world";

            Console.WriteLine($"Hello {subject}!");
            return 0;
        });

        return app.Execute(args);
    }
}

Release Notes

2.0.1: Add .NETStandard 1.6 to the list of supported frameworks.

Showing the top 10 GitHub repositories that depend on McMaster.Extensions.CommandLineUtils:

Repository Stars
icsharpcode/ILSpy
.NET Decompiler
IdentityServer/IdentityServer4
OpenID Connect and OAuth 2.0 Framework for ASP.NET Core
dotnet/BenchmarkDotNet
Powerful .NET library for benchmarking
ravendb/ravendb
ACID Document Database
xunit/xunit
xUnit.net is a free, open source, community-focused unit testing tool for the .NET Framework.
scriptcs/scriptcs
Write C# apps with a text editor, nuget and the power of Roslyn!
fluentmigrator/fluentmigrator
Fluent migrations framework for .NET
MichaCo/CacheManager
CacheManager is an open source caching abstraction layer for .NET written in C#. It supports various cache providers and implements many advanced features.
Azure/azure-sdk-for-net
This repository is intended for active development of the Azure SDK for .NET. For consumers of the SDK we recommend visiting our public developer docs at https://docs.microsoft.com/en-us/dotnet/azure/ or our versioned developer docs at https://azure.github.io/azure-sdk-for-net.
tonerdo/coverlet
Cross platform code coverage for .NET

Version History

Version Downloads Last updated
2.4.4 8,363 11/11/2019
2.4.3 3,290 11/1/2019
2.4.2 30,366 9/24/2019
2.4.1 6,229 9/18/2019
2.4.0 3,274 9/14/2019
2.3.4 169,002 4/11/2019
2.3.3 53,065 3/11/2019
2.3.2 71,625 2/5/2019
2.3.1 20,689 1/19/2019
2.3.0 61,342 1/1/2019
2.2.5 254,382 7/2/2018
2.2.4 45,328 5/25/2018
2.2.3 19,528 5/11/2018
2.2.2 28,341 4/28/2018
2.2.1 10,340 4/11/2018
2.2.0 125,999 3/31/2018
2.2.0-rc 840 3/23/2018
2.2.0-beta 583 3/8/2018
2.2.0-alpha 553 2/20/2018
2.1.1 63,030 12/28/2017
2.1.0 2,208 12/13/2017
2.1.0-rc 526 12/7/2017
2.1.0-beta 1,486 11/22/2017
2.1.0-alpha 435 11/11/2017
2.0.1 5,794 10/13/2017
2.0.0 4,859 9/16/2017
Show less