Erstellt Go-Bibliothek nzargv, die Befehlszeilenargumente gut anordnet

zakuro9715/nzargv PkgGoDevGitHubRepostars

Überblick

-ab=0 --value1=0 --value2 1 So etwas -a -b=0 --value=0 --value2=1 Werde das tun

Was ist zu tun

(Die Anzahl der Werte muss im Voraus mit "FlagN" angegeben werden

Leicht subtiles Verhalten

--FlagN gibt die Anzahl der Werte an, die derzeit bei durch Kommas getrennten Werten ignoriert wird.

Wie benutzt man

Erstellen Sie eine App mit Neu, rufen Sie die Einstellungsmethode auf und rufen Sie dann die Normalisierungsmethode auf.

ToStrings wird an die Methode angehängt, deren Rückgabewert String Slice ist. Wenn es nicht angehängt ist, wird [] nzargv.Value zurückgegeben. Da Wert Name und Wert hat, ist es möglich, den Wert des Flags abzurufen.

Weitere Informationen finden Sie unter GitHub oder go.dev.

Entwicklungsmotiv

Nützliche Bibliotheken zum Erstellen von Befehlszeilen-Apps wie spf13 / cobra und urafave / cli Es gibt viele.

Diese Bibliotheken dienen jedoch nur zum Erstellen von CLI-Apps und fühlen sich häufig überfunktional an, was die Verwendung schwierig macht, wenn Sie eine etwas spezielle Anwendung erstellen möchten.

Der Umgang mit Befehlszeilenargumenten ist jedoch umständlicher als Sie vielleicht denken, und es ist unproduktiv, dies jedes Mal zu schreiben.

Bei der Verarbeitung von Befehlszeilenargumenten habe ich eine Bibliothek erstellt, die in einer Form normalisiert wird, die im Voraus einfach zu handhaben ist.

Recommended Posts

Erstellt Go-Bibliothek nzargv, die Befehlszeilenargumente gut anordnet
Ich habe eine Python-Bibliothek erstellt, um die API von LINE WORKS aufzurufen
Ich habe eine Bibliothek erstellt, um japanische Sätze schön zu brechen
Erstellt eine Python-Bibliothek DateTimeRange, die Zeitbereiche verarbeitet
[Python] Ich habe versucht, mit argparse ein einfaches Programm zu erstellen, das in der Befehlszeile funktioniert
[Python] Ich habe einen Line-Bot erstellt, der zufällig nach englischen Wörtern fragt
Erstellt eine Bibliothek für Python, die die morphologische Teilung problemlos handhaben kann
Ich habe einen lo-Befehl erstellt, der nützlicher ist als ls