Warum brauchen Sie CLI-Dienstprogramme in JavaScript?
Stellen Sie sich vor: Sie benennen jeden Tag manuell Ordner mit Berichten um, konvertieren JSON in CSV oder suchen nach doppelten Dateien. Was wäre, wenn Sie ein kleines Programm schreiben, das dies auf einen Befehl im Terminal in Sekundenschnelle erledigt? Genau dafür gibt es CLI-Dienstprogramme in JavaScript.
Im Gegensatz zu vollwertigen Webanwendungen sind CLI (Command Line Interface) leichte, schnelle und sehr praktische Werkzeuge. Sie benötigen keinen Browser, funktionieren auf jeder Plattform und lassen sich leicht in CI/CD-Skripte integrieren. Auf PythonLib diskutieren wir oft über Automatisierung, und heute zeige ich Ihnen, wie Sie Ihr erstes CLI-Dienstprogramm in Node.js von Grund auf erstellen. Sie werden überrascht sein, wie einfach das ist!
In diesem Artikel gehen wir den gesamten Weg: von der Projekteinrichtung bis zur Veröffentlichung des fertigen Pakets in npm. Sie erhalten nicht nur Theorie, sondern funktionierenden Code, den Sie sofort an Ihre eigenen Aufgaben anpassen können.
Was ist ein CLI-Dienstprogramm und warum JavaScript?
Ein CLI-Dienstprogramm ist ein Programm, das über die Kommandozeile gestartet wird. Sie geben my-tool --input file.txt ein – und es führt die gewünschte Aktion aus. JavaScript ist dafür ideal, weil:
- Node.js auf jedem Server und fast jedem Entwickler-PC installiert ist.
- Es eine riesige Anzahl fertiger Module (npm) für die Arbeit mit Dateien, Netzwerk und Datenformaten gibt.
- Es einfach zu schreiben ist: Kein Kompilieren nötig, eine einzige Datei reicht aus.
- Es plattformunabhängig ist: Ihr Werkzeug funktioniert unter Windows, macOS und Linux.
Auch wenn Sie ein Anfänger in Node.js sind, werden Sie zurechtkommen. Wir beginnen mit dem Einfachsten – einem Skript, das eine Begrüßung ausgibt.
Schritt 1: Projekteinrichtung für das CLI-Dienstprogramm
Erstellen Sie einen Ordner für Ihr Projekt und initialisieren Sie npm:
mkdir my-first-clicd my-first-clinpm init -yÖffnen Sie nun package.json. Dies ist die Hauptkonfigurationsdatei Ihres zukünftigen CLI-Dienstprogramms in JavaScript. Fügen Sie das Feld "bin" hinzu:
{ "name": "my-first-cli", "version": "1.0.0", "description": "Mein erstes CLI-Dienstprogramm", "bin": { "greet": "./index.js" }, "license": "MIT"}Das Feld "bin" ist der Zauber. Es sagt Node.js: „Wenn der Benutzer den Befehl greet eingibt, führe die Datei index.js aus“. Beachten Sie: Der Befehlsname (greet) kann beliebig sein.
Erstellen Sie nun index.js mit der ersten Zeile – dem Shebang. Dies ist für CLI zwingend erforderlich:
#!/usr/bin/env node
console.log('Hallo Welt! Ich bin dein erstes CLI-Dienstprogramm!');Der Shebang #!/usr/bin/env node weist das System an, das Skript mit Node.js auszuführen. Ohne ihn funktioniert der Befehl nicht.
Schritt 2: Das Dienstprogramm ausführbar machen und testen
Um Ihr CLI-Dienstprogramm in JavaScript lokal auszuführen, führen Sie den Befehl aus:
npm linkDieser Befehl erstellt einen globalen Link auf Ihr Paket. Jetzt können Sie in jedem Terminal eingeben:
greetUnd Sie sehen: Hallo Welt! Ich bin dein erstes CLI-Dienstprogramm! Herzlichen Glückwunsch, Sie haben soeben Ihr erstes Dienstprogramm erstellt!
Schritt 3: Parsen von Kommandozeilenargumenten
Nur Text auszugeben – das ist langweilig. Echte CLI-Dienstprogramme akzeptieren Argumente. Lassen Sie uns lernen, wie man sie verarbeitet. In Node.js gibt es das eingebaute Array process.argv, aber für ernsthafte Projekte ist es besser, das Modul commander oder yargs zu verwenden.
Installieren wir commander:
npm install commanderSchreiben wir nun index.js um:
#!/usr/bin/env node
const { Command } = require('commander');const program = new Command();
program .name