Ohne Terminalbenutzung werden Sie mittelfristig nicht durch Linux ( Mint ) kommen. Es kommt unvermeidlich die Situation, wo Sie rekursiv Dateirechte ändern müssen, manuelles Kopieren durch rationales Rsync- oder Tar-Backup ersetzen wollen oder nur noch auf die Textkonsole des Systems gelangen. Und wer nicht nur ein Desktop-Mint, sondern auch einen Linux-Datenserver nutzen will, kommt ohne Terminal via SSH schon gar nicht aus. Dieser Artikel zeigt alle wichtigen Optionen, um das grafische Terminal, aber auch die virtuellen Konsolen und die SSH-Konsole komfortabel einzurichten. Punkt 1 bezieht sich ausschließlich das grafische Terminalfenster. Alle anderen Punkte 2 bis 5 zur Bash-Optimierung gelten auch für SSH und für die Konsolen (Strg-Alt-F1 und weitere). Bei den grafischen Terminalemulatoren nehmen wir das Gnome-Terminal als Referenz, wie es in der Hauptedition von Linux Mint zum Einsatz kommt. Das Mate-Terminal und das Xfce4-Terminal bieten ganz ähnliche Einstellungen, aber nicht immer an gleicher Stelle. Bei der Shell selbst, also dem eigentlichen Kommandointerpreter, ist überall die Bash-Shell Standard. Dieser Beitrag kann keine Einführung in die Bash-Befehle leisten, sondern konzentriert sich auf den Bedienkomfort des Terminals. Beachten Sie in diesem Zusammenhang den Hefteinleger mit seiner Übersicht der wichtigsten Terminalkommandos.
Crashkurs: Samba und SSH
1. Das grafische Terminal
Terminalemulatoren sind grafische Programme mit zahlreichen Einstellungen. Sie sind unabhängig von der Shell, die im Terminal läuft. Die Optionen und Optimierungen, die Sie im grafischen Terminal vornehmen, haben daher mit der Bash-Shell zunächst nichts zu tun. Lediglich bei Farbeinstellungen für das grafische Terminal und solchen für die Bash-Shell gibt es Kombinationen, welche die Lesbarkeit fördern – oder eben nicht. Insbesondere engagierte Nutzer, die sich das Terminal optisch bestmöglich einrichten möchten, sollten sich beim Aussehen des grafischen Terminals farblich festlegen, bevor sie Ausgabefarben und Prompt der Bash-Shell optimieren. Einstellungen und Profile: Das Gnome-Terminal zeigt im Menü „Bearbeiten“ die Untermenüs „Einstellungen“ und „Profileinstellungen“. Beides sind benutzerspezifische Optionen: Was unter „Einstellungen“ festgelegt wird, gilt für jedes Terminal im aktuellen Benutzerkonto. Die „Profileinstellungen“ erlauben darüber hinaus verschiedene Layouts, die man entweder im Gnome-Terminal selbst mit „Terminal –› Profil wechseln“ umschalten kann. Verschiedene Profile sind unnötiger Luxus, jedoch sollten Sie das als „Unbenannt“ betitelte Standardprofil unter „Bearbeiten –› Profileinstellungen“ in jedem Fall bearbeiten. Die Registerkarte „Allgemein“ bestimmt die Größe des Terminalfensters über die Spaltenzahl (Breite) und Zeilenzahl (Länge) sowie die verwendete Schriftart. Beachten Sie, dass Sie das Terminalfenster unabhängig von der Schrift jederzeit mit Strg-+ und Strg– skalieren können. Die Registerkarte „Farben“ definiert die Farb- und Transparenzeinstellungen. Wer Experimente mit eventuell kontrastarmen Ergebnissen vermeiden will, sollte bei den Vorgaben bleiben („Integrierte Schemata“) wie etwa „Schwarz auf hellgelb“ oder „Grün auf schwarz“. Unter „Bildlauf“ sollte der „Zeilenpuffer“ deutlich vierstellig eingestellt sein, damit Sie auch bei umfangreichen Dateilisten (find, ls, rsync) bis zum Beginn der Ausgabe zurückblättern können. Der allgemeinere Punkt „Bearbeiten –› Einstellungen“ spielt für die Terminaloptik keine Rolle. Hier können Sie aber unter „Tastenkürzel“ die Hotkeys ermitteln oder neu bestimmen, die in Ihrem Terminal gelten. Der Tipp, hier auch die Hotkeys für Kopieren (Strg-Umschalt-C) und Einfügen (Strg-Umschalt-V) auf gebräuchliches Strg-C und Strg-V umzustellen, ist zweischneidig, weil Strg-C in der Bash-Shell traditionell für den Abbruch des aktuellen Befehls reserviert ist.
2. Bash-Zeileneditor und History

Kaum ein Terminalthema klingt langweiliger als die Regeln des „line editing“ – also Texteingabe, Textbearbeitung, Autovervollständigung und Befehlssuche am Bash-Prompt. Es entscheidet aber fundamental darüber, wie viel oder wenig Sie tippen müssen – und „Tippen“ bedeutet hier ja nicht das Schreiben von natürlicher Sprache, sondern von oft komplexen Befehlen. Eine Abkürzung hier vorab, da diese nachfolgend häufig erscheint: Die Tilde „~“ ist für die Bash-Shell die Variable für das Home-Verzeichnis des angemeldeten Kontos („/home/[kontoname]“). Die wichtigste Initialisierungsdatei bei jedem Terminalstart ist „~/.bashrc“, also „/home/[kontoname]/.bashrc“). Autocompletion: Lange Dateinamen müssen nicht getippt werden: Wenn Sie die ersten zwei, drei Buchstaben eingeben und dann die Tab-Taste drücken, ergänzt das Terminal den vollständigen Namen automatisch, desgleichen Ordnerpfade, sofern die eingegebenen Buchstaben stimmen (Groß- und Kleinschreibung beachten!). History: Das Terminal vergisst nichts – jedenfalls nicht so schnell. Die Befehle werden im Speicher sowie dauerhaft in der „~/. bash_history“ gespeichert. Dafür die Befehle über Sitzungen und Neustarts hinaus gesammelt werden, sorgt diese Anweisung:
shopt -s histappend
Diese werden Sie in jeder Standardstartdatei „~/.bashrc“ antreffen. Bei welcher Zeilenmenge Schluss sein soll, also die ältesten Einträge gelöscht werden, bestimmen folgende Anweisungen:
HISTSIZE=5000
HISTFILESIZE=5000
Auch diese stehen in jeder „~/.bashrc“, wenn auch eventuell mit geringeren Zeilenangaben. „HISTSIZE“ ist die maximale Zeilenmenge im Speicher, „HISTFILESIZE“ die maximale Zeilenmenge in der Datei „~/. bash_history“. Je höher die Zahlen, desto umfangreicher wird das Gedächtnis der Bash-Shell. Mit der Variablen
HISTCONTROL=ignoredups
können Sie verhindern, dass die History von Dubletten wimmelt: Bereits vorhandene identische Kommandos werden dann nicht aufgenommen.

Soviel zur Optimierung der History. Im praktischen Alltag gibt es mehrere Möglichkeiten. Fast jedem Anwender bekannt ist das Zurückblättern zu den letzten Kommandos mit der Taste Cursor-oben, die den gewünschten Befehl wieder auf den Prompt holt. Eine systematische Suche bietet der Hotkey Strg-R: Nach Eintippen etwa von „apt“ erscheint der letztgenutzte apt-Befehl in kompletter Länge. Ist dieser passend, kann er mit Eingabetaste sofort ausgeführt oder mit Alt-Eingabetaste zum Editieren auf den Prompt geholt werden. Ist der angezeigte Historytreffer nicht der passende, geht es mit Strg-R zum vorletzten und so fort. Eine nützliche Ergänzung zur Rückwärtssuche mit Strg-R ist eine Filtersuche mit der Taste Bild-oben. Nach Eingabe etwa von apt befördert diese Taste den letzten kompletten apt-Befehl direkt auf den Prompt, ein weiteres Bild-oben den vorletzten und so fort. Diese Suche funktioniert aber nur, wenn Sie Bild-Tasten entsprechend belegen – und zwar in der Datei „/etc/inputrc“. Das Editieren erfordert root-Recht (sudo xed /etc/inputrc). Sie werden dort die beiden Zeilen
"e[5~": history-search-backward
"e[6~": history-search-forward
antreffen und müssen nur das führende Kommentarzeichen „#“ entfernen. Zum Editieren vorhandener Zeilen, seien es selbst getippte oder aus der History gefischte, helfen Lösch- und Rücktaste, Pos1, Ende, Strg-Cursor-rechts/links (wortweise springen), Strg-K und Strg-U (Löschen nach und vor der Cursorposition, siehe dazu auch Punkt 4).
Tipp: Linux-Probleme und ihre Lösungen
3. Farben am Prompt und in Dateilisten

Der Prompt, also die Anzeige bei jeder Befehlseingabe, kann beliebige statische und dynamische Informationen anbieten. Die Promptanzeige definieren Sie temporär mit dem Befehl „PS1=’…’“. und dauerhaft in der Datei „~/.bashrc“. Einige dynamische Variablen wie das aktuelle Verzeichnis, Datum oder Uhrzeit bietet der Prompt durch vordefinierte Escape-Zeichenfolgen selbst an, etwa „w“ für das aktuelle Verzeichnis, „u“ für das angemeldete Konto oder „h“ für den Rechnernamen. Einfache Prompts sehen dann so aus:
PS1="w => "
PS1="u@h:w => "
Eine gute Infoquelle für alle Promptoptionen ist die Seite https://wiki.archlinux.de/title/Bash-Prompt_anpassen . Über die eingebauten Codes hinaus können Sie jede allgemeine oder selbst definierte Variable einfach mit „$Variable“ in die PS1-Definition setzen:
PS1="w [$LOGNAME] => "
Um Infos gegeneinander abzugrenzen, sind ferner Farbdefinitionen vorgesehen, die stets mit der Sequenz „[