1. Index
  2. Shell
  3. C
  4. POSIX
  5. JavaScript

Node

Der eigenständige Interpreter Node bringt eine Klassenbibliothek für den Zugriff auf das Betriebssystem mit und ermöglich so auch serverseitge Programmierung in JavaScript.

Process

Das globale Objekt exponiert den Kontext des ausführenden Prozesses.

Process : EventEmitter
Readable stdin Standardeingabe
Writable stdout Standardausgabe
Writable stderr Standardfehlerausgabe
String[] env PATH=… Umgebungsvariablen
String[] argv Argumente des Skripts
String[] execArgv Argumente des Interpreters
String execPath /opt/node/bin/node Pfad des Interpreters
String version NODE_VERSION Versionsnummer des Interpreters
Object versions Versionsnummern einzelner Komponenten
Object config Konfiguration des Übersetzers
Number pid 123 Eigene Prozessnummer
String title node Eigener Prozessname in ps
String arch x64 Prozessor-Architektur
String platform linux Platform
Number maxTickDepth 1000
on ("exit") Programmende-Handler
on ("uncaughtException") Ausnahme-Handler
on ("SIGINT") Signal-Handler
abort () Bricht das Programm mit Coredump ab
chdir (directory) Wechselt das Arbeitsverzeichnis
String cwd () Liefert das Arbeitsverzeichnis
exit (code) Beendet das Programm
Number getgid () Liefert die Gruppe
setgid (id) Ändert die Gruppe
Number getuid () Liefert den Benutzer
setuid (id) Ändert den Benutzer, benötigt CAP_SETGID
getgroups () Liefert Hilfsgruppen
setgroups (groups) Ändert Hilfsgruppen, benötigt CAP_SETGID
initgroups (user, extra_group)
kill (pid, signal) Sendet Signal an anderen Prozess
Object memoryUsage () Liefert aktuellen Speicherverbrauch
nextTick (function ()) Aufruf beim nächsten Durchlauf der Ereignisschleife
Number umask (mask) Liefert oder setzt die Maske für Zugriffsrechte
Number uptime () Laufzeit in Sekunden
[sec, nano] hrtime () Hochauflösender Zeitgeber für Performance-Analyse

ChildProcess

ChildProcess child_process.spawn (command, args, options)
ChildProcess child_process.exec (command, options, function (err, stdout, stderr))
ChildProcess child_process.execFile (file, args, options, function (err, stdout, stderr))
ChildProcess child_process.fork (modulePath, args, options)
child_process.ChildProcess : EventEmitter
Writable stdin Pipe zur Standardeingabe des Kindprozesses
Readable stdout Pipe zur Standardausgabe des Kindprozesses
Readable stderr Pipe zur Standardfehlerausgabe
Number pid Prozessnummer
Boolean connected Verbindungsstatus
on ("error", function (err)) Ein Fehler ist aufgetreten
on ("message", function (message, handle)) Eine Nachricht ist eingetroffen
on ("disconnect", function ()) Die Verbindung wurde geschlossen
on ("close", function (code, signal)) Der Prozess wurde beendet
on ("exit", function (code, signal)) Der Prozess wird gerade beendet
kill (signal) Sendet Signal an Kindprozess
send (message, handle) Sendet Nachricht an Kindprozess
disconnect () Schließt Verbindung zum Kindprozess

EventEmitter

Viele Objekte emittieren Ereignisse.

events.EventEmitter : Object
Number EventEmitter.listenerCount(emitter, event)Zählt die Lauscher für ein Ereignis
on ("newListener", Eine Behandlungsroutine wurde registriert
function (event, listener))
on ("removeListener", Eine Behandlungsroutine wurde entfernt
function (event, listener))
on (event, function (…)) Registriert Behandlungsroutine für einen Ereignistyp
once (event, function (…)) Führt die Behandlungsroutine nur einmal aus
addListener (event, listener) Registriert Behandlungsroutine für einen Ereignistyp
removeListener (event, listener) Entfernt registrierte Behandlungsroutine
removeAllListeners (event) Entfernt alle Behandlungsroutinen (für einen Ereignistyp)
setMaxListeners (n) Begrenzt die Menge der registrierten Funktionen
Function[]listeners (event) Liefert Liste der registrierten Funktionen
Boolean emit (event, arg…) Löst ein Ereignis aus

Buffer

Binärdaten mit fester Länge.

buffer.Buffer : Object
Boolean Buffer.isEncoding (encoding) Prüft ob die Zeichenkodierung erlaubt ist
Boolean Buffer.isBuffer (object) Prüft ob ein Objekt ein Puffer ist
Number Buffer.byteLength (string, encoding) Berechnet die Länge einer Zeichenkette in Oktetten
Buffer Buffer.concat (buffer[], length) Erzeugt einen Großen aus vielen kleineren Puffern
Number length Größe in Oktetten
new Buffer (size) Erzeugt leeren Puffer
new Buffer (array) Erzeugt Puffer mit Binärdaten
new Buffer (string, encoding) Erzeugt Puffer aus Zeichenkette
fill (value, offset, end) Füllt den Puffer mit einem Wert
write (string, offset, length, encoding) Schreibt Zeichendaten in einen Puffer
copy (target, offset, start, end) Kopiert Zeichen in den Zielpuffer
Buffer slice (start, end) Extrahiert Teilbereich,
Number read… ( offset, noAssert) Liest Datenwort
Number write… (value, offset, noAssert) Schreibt Datenwort
String toString (encoding, start, end) Wandelt Oktette in eine Zeichenkette
String toJSON () Liefert eine Liste der Oktette

Datenstrom

Quelle

stream.Readable : EventEmitter
on ("readable", function ()) Neue Daten sind verfügbar
on ("data", function (chunk)) Hier ist ein neuer Brocken
on ("end", function ()) Es sind keine Daten mehr verfügbar
on ("close", function ()) Der Datenstrom wurde geschlossen
on ("error", function (err)) Ein Fehler ist aufgetreten
Buffer read (size) Liest Binär- oder Textdaten
setEncoding (encoding) Setzt Kodierung für Textdaten
pause () Unterbricht den Flussmodus
resume () Setzt den Flussmodus in Gang
pipe (dest, options)Leitet alle Daten zu einem anderen Strom
unpipe (dest) Entfernt eine oder alle Umleitungen
unshift (chunk) Pumpt Daten in den Strom zurück
Readable wrap (stream) Erzeugt moderne Fassade für alte Streams

Senke

stream.Writable : EventEmitter
on ("drain", function ()) Es können wieder Daten geschrieben werden
on ("finish", function ()) Alle Daten wurden verarbeitet
on ("pipe", function (source)) Senke wurde zum Ziel einer Umleitung
on ("unpipe", function (source)) Senke wurde als Ziel entfernt
on ("error", function (err)) Ein Fehler ist aufgetrete
Boolean write (chunk, encoding, function ()) Schiebt Daten in die Senke
end (chunk, encoding, function ()) Es kommen keine weiteren Daten mehr

Ein Duplexstrom ist sowohl Quelle als auch Senke.

stream.Duplex : Readable | Writable

Ein Transformator verändert die durchfließenden Daten.

stream.Transform : Duplex

FileSystem

Schnittstelle zum Dateisystem des Hosts.

fs.FileSystem
rename (oldpath, newpath, function (err)) Benennt Datei um
[f]truncate (path | fd, len, function (err)) Kürzt Datei auf feste Länge
[fl]chown (path | fd, uid, gid, function (err)) Ändert Besitzer und Gruppe
[fl]chmod (path | fd, mode, function (err)) Setzt Zugriffsrechte,
[fl]stat (path | fd, function (err, stats))Liefert Metadaten
link (srcpath, dstpath, function (err)) Erzeugt neuen Inode
symlink (srcpath, dstpath, type, function (err)) Erzeugt symbolische Verknüpfung
readlink (path, function (err, linkString)) Liest symbolische Verknüpfung
realpath (path, cache, function (err, resolvedPath))Löst den echten Pfad auf
[f]utimes (path, atime, mtime, function (err)) Ändert Zeitstempel
unlink (path, function (err)) Löscht Datei
rmdir (path, function (err)) Löscht Verzeichnis
mkdir (path, mode = 0777, function (err)) ErzeugtVerzeichnis.
readdir (path, function (err, files[])) Listet Dateien im Verzeichnis
open (path, flags = rw, mode = 0666, function (err, fd)) Öffnet Datei
close (fd, function (err)) Schließt Datei
fsync (fd, function (err)) Schreibt Daten auf Platte
write (fd, buffer, offset, length, pos, Schreibt Teil in Datei
function (err, nbytes, buffer))
read (fd, buffer, offset, length, pos, Liest Teil aus Datei
function (err, nbytes, buffer))
readFile (filename, options, function (err, data)) Liest Datei komplett
writeFile (filename, data, options, function (err)) Schreibt Datei komplett
appendFile (filename, data, options, function (err)) Hängt Daten an Datei
watchFile (filename, options, listener (curr, prev)) Registriert Listener
unwatchFile (filename, listener) Entfernt einen oder alle Listener
FSWatcher watch (filename, options, listener (event, filename)) Überwacht Verzeichnis auf Änderungen
Readable createReadStream (path, options) Erzeugt Eingabestrom
Writable createWriteStream (path, options) Erzeugt Ausgabestrom
encoding | mode | flags

Beobachter

fs.FSWatcher
on ("change", function (event, filename)) Registriert Änderungsroutine
on ("error", function (error)) Registriert Fehlerbehandlungsroutine
close () Beendet die Überwachung

Metadaten

fs.Stats
Number dev Gerätenummer
Number ino Indexknotennummer
Number mode Zugriffsrechte
Number nlink Referenzzähler
Number uid Besitzer
Number gid Gruppe
Number rdev Typ
Number size Oktette
Number blksize Blöcke
Number blocks Belegte Blöcke
Date atime Letzter Zugriff
Date mtime Letzte Änderung
Date ctime Letzte Statusänderung
Boolean isSymbolicLink () Symbolischer Verweis
Boolean isFile () Reguläre Datei
Boolean isDirectory () Verzeichnis
Boolean isBlockDevice () Zeichengerät
Boolean isCharacterDevice () Blockgerät
Boolean isFIFO () FIFO
Boolean isSocket () Sockel

Pfad

Pfade im Dateisystem bilden und zerlegen.

path.Path
String sep Trennzeichen für Ebenen, Unix /, Windows \
String delimiter Trennzeichen für Listen, Unix :, Windows ;
String normalize (path) Berechnet den kürzesten Pfad
String join (path, …) Baut Pfad aus Einzelteilen zusammen
String resolve (from, …, to)
String relative (from, to) Berechnet relativen Pfad zwischen zwei Knoten
String dirname (path) Entfernt letzte Komponente
String basename (path, ext) Liefert nur die letzte Komponente
String extname (path)

Literatur

  1. Node: Node.js v14.3.0 Documentation