C# | System.CommandLine ライブラリを使用したコマンドライン (CLI) アプリの構築

王林
リリース: 2024-07-24 00:34:04
オリジナル
1201 人が閲覧しました

C# | Building a Command-Line (CLI) App using System.CommandLine Library

Note
You can check other posts on my personal website: https://hbolajraf.net

導入

このガイドでは、C# および .NET で System.CommandLine ライブラリを使用してコマンドライン インターフェイス (CLI) アプリケーションを構築する方法を説明します。 System.CommandLine は、アプリケーション用の堅牢で機能豊富なコマンド ライン インターフェイスを作成するプロセスを簡素化します。

前提条件

始める前に、以下がインストールされていることを確認してください:

  • .NET SDK (バージョン 5.0 以降)

ステップ 1: 新しいコンソール アプリケーションを作成する

dotnet new console -n MyCommandLineApp
cd MyCommandLineApp
ログイン後にコピー

ステップ 2: System.CommandLine NuGet パッケージを追加する

dotnet add package System.CommandLine --version 2.0.0-beta1.21308.1
ログイン後にコピー

ステップ 3: コマンドライン オプションを定義する

Program.cs で、System.CommandLine:
を使用してコマンド ライン オプションを定義します。

using System.CommandLine;
using System.CommandLine.Invocation;

class Program
{
    static int Main(string[] args)
    {
        var rootCommand = new RootCommand
        {
            new Option<int>("--number", "An integer option"),
            new Option<bool>("--flag", "A boolean option"),
            new Argument<string>("input", "A required input argument")
        };

        rootCommand.Handler = CommandHandler.Create<int, bool, string>((number, flag, input) =>
        {
            // Your application logic goes here
            Console.WriteLine($"Number: {number}");
            Console.WriteLine($"Flag: {flag}");
            Console.WriteLine($"Input: {input}");
        });

        return rootCommand.Invoke(args);
    }
}
ログイン後にコピー

ステップ 4: CLI アプリを実行する

dotnet run -- --number 42 --flag true "Hello, CLI!"
ログイン後にコピー

値を独自の値に置き換えて、出力を確認します。

ステップ 5: ヘルプ テキストをカスタマイズする

ヘルプ テキストを改善するには、オプションと引数に説明を追加します:

var rootCommand = new RootCommand
{
    new Option<int>("--number", "An integer option"),
    new Option<bool>("--flag", "A boolean option"),
    new Argument<string>("input", "A required input argument")
};

rootCommand.Description = "A simple CLI app";
rootCommand.Handler = CommandHandler.Create<int, bool, string>((number, flag, input) =>
{
    Console.WriteLine($"Number: {number}");
    Console.WriteLine($"Flag: {flag}");
    Console.WriteLine($"Input: {input}");
});
ログイン後にコピー

次は何?

C# と .NET の System.CommandLine ライブラリを使用して、基本的なコマンド ライン インターフェイス (CLI) アプリケーションを正常に作成しました。特定の要件に基づいてアプリケーションをカスタマイズおよび拡張します。
詳細については、公式ドキュメント System.CommandLine GitHub

を参照してください。

以上がC# | System.CommandLine ライブラリを使用したコマンドライン (CLI) アプリの構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート