Jetzt habe ich das fast einen Tag lang untersucht und endlich einen Weg gefunden, diesen Titel zu setzen. Dies geschieht über Escape-Sequenzen, die mit \ e] 0 beginnen. und ende mit einem BEL-Zeichen (= \ 007 = \ a). Im Gegensatz zu ich oben erwähnt, Mitteilungen der Schale zurück in die Terminal - Anwendung ist möglich, sehr begrenzt, durch eine solche Escape - Sequenzen (es gibt ein paar mehr).
Dazu von oben:
PROMPT_COMMAND='echo -ne "\e]0;YOUR TITLE GOES HERE\a"'
Es kann funktionieren, aber nicht immer. PROMPT_COMMANDist eine Variable, deren Inhalt jedes Mal ausgeführt wird, wenn Sie einen Befehl senden. Daher sendet sie auch diese Escape-Sequenz. Dies kann jedoch durch eine Escape-Sequenz in der PS1-Variablen überschrieben werden, mit der die Befehlszeile festgelegt wird. Dies ist der Grund, warum das oben Gesagte hier keine Wirkung hatte.
Aus einer älteren Ubuntu-Installation habe ich folgendes herausgesucht, das die Eingabeaufforderung (rechter Teil nach dem ]) setzt und auch die erforderliche Escape-Sequenz (linker Teil bis einschließlich des ]) sendet :
PS1="\[\e]0;\u@\h: \w\a\]\u@\h:\w\$ "
Dies führt wahrscheinlich zu einer besseren Leistung, da nicht $PROMPT_COMMANDjedes Mal eine Interpretation erforderlich ist . Es hat auch viel mehr Optionen, da Bash hier mehr Escape-Sequenzen hat, z. B. \ufür den aktuellen Benutzernamen, \Wfür den aktuellen Verzeichnisnamen oder \wfür den gesamten Pfad des aktuellen Arbeitsverzeichnisses, optional auf die letzten paar durch die Zahl in gekürzt $PROMPT_DIRTRIM. Siehe Kapitel PROMPTINGin der Bash-Manpage. Beachten Sie auch, dass die Escape-Sequenz zusätzlich von \[und \]hier umgeben sein muss.
So legen Sie einen festen Titel fest:
PS1="\[\e]0;YOUR TITLE GOES HERE\a\]\u@\h:\w\$ "
Genießen!
Während meiner Untersuchung habe ich auch versucht, den gnome-terminal-Quellcode zu verstehen, der zu vte-Quellcode führt, und dort wird die Unterstützung für das Setzen von Titeln und das Lesen von Escape-Sequenzen als Sicherheitsrisiko angesehen: Siehe hier (Fall 20, Fall 21) und hier ("Window Title Reporting").