TTY ist die Abkürzung für TeleTYpewriter. Mit einer Schreibmaschine kann
so gesehen Eingaben machen und sie erzeugt Ausgaben. Als Synonym dafür
verwenden wir Terminal. Die hier gezeigten Methoden funktionieren zum
Teil nicht an Terminalemulatoren, wie z.B. xterm, denn es werden nicht
notwendigerweise alle Terminalfunktionen emuliert. Ich rate zum Testen
dazu an ein echtes Terminal zu wechseln. Das geht i.d.R. mit
[STRG]+[ALT]+{[F1]-[F12]}
Name von TTY #
Ein Terminal unter Linux ist in der Regel als virtuelles Gerät auch
unter /dev/
zu finden. Wie das aktuelle Terminal heißt, lässt sich mit
tty
herausfinden, zum Beispiel:
$ tty
/dev/tty3
Starten und Stoppen von TTY's #
Weil ja Geräte erstellt werden, kann nur der root-nutzer echte Terminals erstellen und wieder löschen
openvt -c 12 -- ls -la
deallocvt 12
openvt -c 12 -- mingetty tty12
deallocvt 12
Zeile 1 zeigt Ordnerinhalt an und beendet die Konsole. Das --
trennt die Parameter vom Befehl. Zeile 3 Startet eine login-shell
auf tty12
Eigenschaften von TTY #
Das virtuelle Terminal hat wie ein reales Anzeigegerät (z.B. ein
zweizeiliges Display im Towergehäuse) verschiedene Eigenschaften, die
sich mit stty
abfragen lassen.
$ stty -a"
speed 38400 baud; rows 20; columns 160; line = 0;
intr = ^C; quit = ^; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 hupcl -cstopb cread -clocal -crtscts
-ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
-echoctl echoke
Zeile 1
Informationen über die Anzahl der darstellbaren Zeilen, wie schnell wir auf dem
Display schreiben können und so weiter
Zeilen 2-4
Das ^
-Symbol steht für die [STRG]-Taste. Damit teilt uns stty mit, dass wir
anstelle von [BACKSPACE] auch [STRG][?], also auf dem deutschen Keyboard
[STRG]+[SHIFT]+[ß] drücken können, um den letzten Buchstaben zu löschen.
Zeilen 5-10
Dazu schaut man am besten in man stty
nach. Dort steht, wofür die ganzen
Parameter stehen. Ein paar Beispiele kommen aber gleich.
Manipulation von Eigenschaften #
Mit stty
lässt sich das Verhalten des Terminals aber auch verändern:
stty -F $(tty) iuclc
stty -iuclc
stty intr ^-
stty rows 20
Zeile 1
schaltet Übersetztung ein, die alle Großbuchstaben in Kleinbuchstaben umwandelt
Zeile 2
schaltet die Übersetztung wieder aus. Das -F
ist zum Glück optional 🙂
Zeile 3
deaktiviert [STRG]+[C] auf der Konsole
Zeile 4
beschränkt die Anzeige auf 20 Zeilen