Clap — leistungsstarkes CLI-Framework für Rust

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Was ist Clap?

Clap (Command Line Argument Parser) ist ein beliebtes und leistungsstarkes Framework zum Erstellen von Kommandozeilenschnittstellen (CLI) in der Sprache Rust. Es ermöglicht Entwicklern, Argumente, Flags, Unterbefehle einfach zu definieren und automatisch Hilfe zu generieren.

Wofür wird Clap benötigt?

Das manuelle Schreiben eines Argument-Parsers ist eine zeitaufwändige und fehleranfällige Aufgabe. Clap übernimmt die gesamte Routine: Typvalidierung, Prüfung erforderlicher Parameter, Generierung von Hinweisen und farbiger Hilfe-Ausgabe. Dank der derive-Makros wird der Code deklarativ und prägnant.

Installation

Fügen Sie in Cargo.toml hinzu:

[dependencies]clap = { version = "4.5", features = ["derive"] }

Hauptfunktionen

  • Automatisches Parsen von Argumenten und Flags
  • Unterstützung für verschachtelte Unterbefehle (git-Stil)
  • Generierung von Hilfe und Version
  • Wertvalidierung (Bereiche, Liste möglicher Werte)
  • Autovervollständigung für bash/zsh/fish/powershell
  • Farbige Fehlerausgabe

Codebeispiel

use clap::Parser;

#[derive(Parser)]#[command(name = "greet")]#[command(about = "Benutzer begrüßen")]struct Cli { /// Name des Benutzers name: String,

/// Anzahl der Wiederholungen #[arg(short, long, default_value_t = 1)] count: u32,

/// In Großbuchstaben ausgeben #[arg(short, long)] uppercase: bool,}

fn main() { let cli = Cli::parse(); for _ in 0..cli.count { let msg = format!("Hallo, {}!", cli.name); if cli.uppercase { println!("{}", msg.to_uppercase()); } else { println!("{}", msg); } }}

Wann sollte man Clap verwenden?

Verwenden Sie Clap, wenn Sie entwickeln:

  • Kommandozeilen-Dienstprogramme (z. B. grep, sed, curl)
  • Werkzeuge für DevOps und CI/CD
  • Komplexe CLIs mit vielen Unterbefehlen (wie git oder cargo)
  • Jedes Rust-Projekt, bei dem Benutzereingaben über das Terminal erforderlich sind

Clap ist der De-facto-Standard für CLIs in Rust. Es vereint maximale Leistung mit Entwicklerfreundlichkeit.

Empfehlungen