Shell-Skripting mit Node.js
Sie können die Offline-Version dieses Buches (HTML, PDF, EPUB, MOBI) kaufen und damit die kostenlose Online-Version unterstützen.
(Werbung, bitte nicht blockieren.)

3 Erste Schritte mit Node.js



Dieses Kapitel erklärt die ersten Schritte mit Node.js.

3.1 Hilfe für Node.js erhalten

3.2 Node.js und npm installieren

Der Installer für Node.js installiert auch den Paketmanager npm. Er kann von der Node.js-Homepage heruntergeladen werden und ist für viele Betriebssysteme verfügbar.

3.3 Node.js-Code ausführen

3.3.1 Code in der Node.js REPL auswerten

Die Node.js REPL (read-eval-print loop) ist eine Kommandozeile, auf der wir interaktiv Node.js-Code auswerten können.

Wir können die Node.js REPL im JavaScript-Strict-Mode starten (der sicherer ist und für Code in ESM-Modulen standardmäßig aktiviert ist)

node --use_strict

Wenn wir node ohne Argumente ausführen, verwendet die Node.js REPL nicht den Strict Mode.

node

So sieht die Verwendung der Node.js REPL aus (% ist ein Unix-Shell-Prompt, > ist der Node.js REPL-Prompt)

% node
Welcome to Node.js v18.9.0.
Type ".help" for more information.
> path.join('dir', 'sub', 'file.txt')
'dir/sub/file.txt'
>

Alle integrierten Node-Module sind in der REPL über globale Variablen verfügbar: assert, path, fs, util usw.

3.3.2 Schnelles Ausgeben des Ergebnisses eines JavaScript-Ausdrucks

Wir können den Shell-Befehl node mit der Option --print (Abkürzung: -p) verwenden, um das Ergebnis der Auswertung eines JavaScript-Ausdrucks auszugeben. Ähnlich wie in der REPL sind alle integrierten Module über globale Variablen verfügbar. Zum Beispiel gibt der folgende Befehl den Pfad des Home-Verzeichnisses aus und funktioniert sowohl auf Unix-Systemen als auch auf Windows.

node -p "os.homedir()"

Weitere Informationen zu dieser Kommandozeilenoption finden Sie in Abschnitt 15.7.7 „node --eval und node --print.

3.3.3 Module mit Node.js-Code ausführen

Nehmen wir zum Beispiel das folgende Modul

// my-module.mjs
import * as os from 'node:os';
console.log(os.userInfo());

Wir können es von einer Shell aus über

node my-module.mjs

3.3.4 Node.js-Code aus der Zwischenablage ausführen

Wir können auch Node.js-Code ausführen, den wir in die Zwischenablage kopiert haben. Zum Beispiel könnten wir den Code von my-module.mjs aus dem vorherigen Abschnitt kopieren und auf macOS wie folgt ausführen:

pbpaste | node --input-type=module

Die Option --input-type=module weist Node.js an, den Code, den es vom Standard-Input erhält, als Modul zu interpretieren. Dies ermöglicht uns unter anderem die Verwendung von import.

Der macOS-Shell-Befehl pbpaste sendet den Inhalt der Zwischenablage an die Standardausgabe. Andere Betriebssysteme haben ähnliche Shell-Befehle: