Terminal-I/O
Lesen von stdin und Schreiben zu stdout/stderr für CLI-Anwendungen.
Laden
local io = require("io")
Schreiben zu Stdout
Schreibt Strings zu stdout ohne Zeilenumbruch:
local ok, err = io.write("text", "more")
| Parameter | Typ | Beschreibung |
|---|---|---|
... |
string | Variable Anzahl von Strings zum Schreiben |
Gibt zurück: boolean, error
Print mit Zeilenumbruch
Schreibt Werte zu stdout mit Tabs dazwischen und Zeilenumbruch am Ende:
io.print("value1", "value2", 123)
| Parameter | Typ | Beschreibung |
|---|---|---|
... |
any | Variable Anzahl von Werten zum Ausgeben |
Gibt zurück: boolean, error
Schreiben zu Stderr
Schreibt Werte zu stderr mit Tabs dazwischen und Zeilenumbruch am Ende:
io.eprint("Error:", message)
| Parameter | Typ | Beschreibung |
|---|---|---|
... |
any | Variable Anzahl von Werten zum Ausgeben |
Gibt zurück: boolean, error
Bytes lesen
Liest bis zu n Bytes von stdin:
local data, err = io.read(1024)
| Parameter | Typ | Beschreibung |
|---|---|---|
n |
integer | Anzahl der zu lesenden Bytes (Standard: 1024, Werte <= 0 werden zu 1024) |
Gibt zurück: string, error
Zeile lesen
Liest eine Zeile von stdin bis zum Zeilenumbruch:
local line, err = io.readline()
Gibt zurück: string, error
Ausgabe flushen
Flusht den stdout-Puffer:
local ok, err = io.flush()
Gibt zurück: boolean, error
Kommandozeilenargumente
Holt Kommandozeilenargumente:
local args = io.args()
Gibt zurück: string[]
Fehler
| Bedingung | Art | Wiederholbar |
|---|---|---|
| Kein Terminal-Kontext | errors.UNAVAILABLE |
nein |
| Schreiboperation fehlgeschlagen | errors.INTERNAL |
nein |
| Leseoperation fehlgeschlagen | errors.INTERNAL |
nein |
| Flush-Operation fehlgeschlagen | errors.INTERNAL |
nein |
Siehe Fehlerbehandlung für die Arbeit mit Fehlern.