Ich habe mehrere Instanzen von Terminals in meiner Arbeitsumgebung. Ich möchte einen bestimmten Titel für jedes Terminal festlegen, um eine klare Vorstellung davon zu bekommen, welchem Zweck das jeweilige Terminal dient, z. B. Apache, editing_ini, postgres usw.
Natürlich von der Kommandozeile.
command-line
gnome-terminal
titlebar
oben ohne
quelle
quelle
gnome-terminal --load-config
zusammen mit diesem Skript, das ich geschrieben habe, verwendet.# set title of current terminal setTerminalTitle(){ echo -ne "\033]0;${1}\007" } alias termttl=setTerminalTitle
jetzt kannst du termttl alias verwenden, um den Titeltermttl askubuntu
gnome-terminal
Standard istPROMPT_COMMAND=__vte_prompt_command
. Dies verwendet Werte aus Profilen in Einstellungen. Wenn mehrere Profile vorhanden sind, verfügen die Menüelemente " Neuer Tab" und " Neues Fenster" über ein Untermenüelement für jedes Profil. Die manuelle Möglichkeit besteht darin, eine neue Terminalregisterkarte zu öffnen, mit der rechten Maustaste auf den Registerkartentitel zu klicken und Titel festlegen ... auszuwählen . (Dies würde in einer separaten Antwort so viel einfacher zu lesen sein, aber ...)Antworten:
Die benutzerfreundlichste Methode ist die Auswahl über das Menü Terminal -> "Titel festlegen ...".
Es gibt jedoch auch andere Möglichkeiten, die Sie ausstellen können
Dies führt möglicherweise nicht zu dem gewünschten Effekt, da die Wahrscheinlichkeit groß ist, dass Sie
.bashrc
dieses Verhalten überschreiben.Bring uns zur letzten Methode, die ich schamlos aus meiner herausgerissen habe
.bashrc
.Als zusätzliche Referenz ist dies die bestimmte Zeile in meinem
.bashrc
Möglicherweise müssen Sie diesen Code auch in Ihrem ~ / .bashrc auskommentieren
quelle
PROMPT_COMMAND
ist ein auszuführendes Programm .PS1
undPS1
sind Textzeichenfolgen , die angezeigt werden. Im obigen Beispiel wird der Befehl ausgeführtecho
, der dann einfach eine Zeichenfolge ausgibt. Weitere Informationen finden Sie unterman bash
oder unter manpages.ubuntu.com/bash .Option "--title" is no longer supported in this version of gnome-terminal.
Die Antwort von Ward ist großartig, wenn Sie Ihren Titel bei jedem Öffnen eines Terminals basierend auf dem Host festlegen möchten, auf dem Sie sich befinden. Wenn Sie jedoch nur schnell einen Titel festlegen möchten, können Sie Echo einfach selbst ausführen:
oder machen Sie eine einfache Funktion (in Ihrem
~/.bashrc
), sagen wirtermtitle
mit dem du laufen kannst
termtitle some title here
.quelle
function set_title() { echo -ne "\033]0;${1}\007" } alias title=set_title
und dann Folgendes verwenden:$ title term_title
$var_log
und${var}_log
sind sehr verschiedene Dinge, und der Unterschied kann Fehler in Skripten verursachen.unset PROMPT_COMMAND
oder stellen Sie es so ein, dass es auch den Titel ändert, zBexport PROMPT_COMMAND='printf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "$(basename $PWD)"'
Wenn Sie den Vim-Editor verwenden, können Sie diese Option auch in Ihrem vimrc aktivieren:
welches standardmäßig deaktiviert ist. Es werden coole Terminal-Titel gesetzt, die den Dateinamen, den Sie gerade bearbeiten, und einige andere Dinge anzeigen.
quelle
Der Vollständigkeit halber möchte ich hinzufügen, dass Sie den
gnome-terminal
Titel auch mit diesem Befehl festlegen können :Sie müssen zuerst das Paket wmctrl installieren .
quelle
Argh, so viele Antworten ...
Ich habe versucht
wmctrl
, was fast geklappt hat, außer dass ich den Symboltitel nicht dauerhaft ändern konnte.Das Problem ist, dass die PS1 in Bash in Ubuntu den Titel festlegt.
Die Standard-PS1 ist
... was den Titel in der ersten Escape-Sequenz festlegt:
\e]0;\u@\h: \w\a
Es gibt also zwei Lösungen:
Lösung 1: Vereinfache PS1 und benutze dann PROMPT_COMMAND
Ändere PS1 zu etwas Einfacherem:
Dann benutze den PROMPT_COMMAND:
Lösung 2: PS1 direkt modifizieren
Ändere einfach die PS1 mit dem neuen Titel:
quelle
]0;
in Ihrem Code zu erklären ? Ich glaube, ich habe die Bedeutung vonecho -e '\007 \033'
mit demascii -o
Befehl gefunden ... obwohl ich ehrlich gesagt nicht sicher bin, was das dort tut ... danke ...\e
oder\033
ist das Escape-Zeichen (ESC), mit dem eine Escape-Sequenz gestartet wird.]
Startet einen Betriebssystembefehl (OSC). Für ein xterm0;
bedeutet "set the title" und\a
oder\007
ist die Glocke (BEL), die den OSC beendet. Weitere Informationen: en.wikipedia.org/wiki/ANSI_escape_code#Escape_sequences\e
und\a
) für\033
und\007
konnte sie jedoch nicht finden, da ich nicht die richtigen Keywords für die Eingabe in Google kannte. Der von Ihnen angegebene Link ist ebenfalls nützlich. Können Sie bitte Ihren Kommentar in eine Antwort umwandeln?Wenn Sie Ubuntu-Benutzer sind, können Sie den Titel eines Gnome-Terminal-Tabs über das HUD ändern .
Drücken Sie im Gnome-Terminal Alt, um das HUD aufzurufen, geben Sie die ersten Buchstaben ein, z. B. "tit", drücken Sie die Eingabetaste und geben Sie Ihren neuen Titel ein.
Dies ist eine sehr schnelle Methode und vermeidet die Verwendung der Maus.
quelle
F2
Schlüssel vermeidet auch die Maus.Eine andere Möglichkeit, den Titel von zu ändern,
gnome-terminal
ist die Verwendung vongconftool-2
; Dadurch wird der ursprüngliche Terminaltitel für das ausgewählte Profil geändert , sodass mit Titeln wie "Apache", "Bearbeiten" usw. unterschiedliche Profile verknüpft sein können. Anschließend werden Siegnome-terminal
mit dem entsprechenden Profil gestartet , um den von Ihnen angegebenen Terminaltitel abzurufen. Dies steht im Gegensatz dazu,gnome-terminal --title "name"
dass der Titel pro Terminal geändert wird, der im Profil angegebene ursprüngliche Titel jedoch nicht beeinflusst wird.Sie können den folgenden Befehl in einem Skript verwenden, um den Namen des Terminals für ein Profil festzulegen, und den Namen des Terminals zu bestimmten Tageszeiten ändern, um Sie an bestimmte Dinge zu erinnern:
Dies ist für das Standardprofil, aber Sie können den Titel auch für andere Profile festlegen, indem Sie beispielsweise ein
Default
anderes Profil wie dasProfile0
folgende auswählen :Ich dachte, diese Art, den Titel zu ändern, ist nützlich, weil sie in Skripten verwendet werden kann oder nur als schnelle Befehlszeilenmethode, um den Titel für das Profil festzulegen. Beachten Sie, dass Sie manchmal das Terminal mit dem angegebenen Profil neu starten müssen, damit die
gconftool-2
Einstellung wirksam wird. Die vollständigen verfügbaren Einstellungen fürgnome-terminal
können mit aufgelistet werdengconftool-2 -R /apps/gnome-terminal
.quelle
Eine andere Lösung ist die Verwendung von xdotool zur Simulation von Tastenanschlägen, die in Skripten nützlich sein können:
Setze eine Tastenkombination in gnome-terminal:
Zum Beispiel das Assing
Shift+Ctrl+Y
.Installieren
xdotool
Sie, wenn Sie es noch nicht haben:Die folgende Befehlssequenz (die Sie auch in einem Bash-Skript verwenden können) legt den Terminal- / Tabulatortitel fest (Leerzeichen mit
\
):[optional] Sie können auch xdotool verwenden, um z. B. eine neue Registerkarte zu öffnen und den Titel mit den oben genannten Befehlen festzulegen. Verwenden Sie dazu:
Erwägen Sie, eine Ruhezeit vor und nach dem Öffnen eines neuen Registers hinzuzufügen, z. B.
sleep 1
(um 1 Sekunde zu warten).Dies ist nicht die eleganteste Lösung, aber es hat bei mir funktioniert! Die vorherigen Antworten haben in meinem Fall nicht funktioniert. Ich benutze Gnome-Terminal in Ubuntu 14.04 und wollte ein Bash-Skript erstellen.
quelle
Um nur das aktuelle Arbeitsverzeichnis im Titel anzuzeigen, versuchen Sie Folgendes in Ihrer '.bashrc'-Datei:
oder
quelle
Dies funktionierte in meinem Gnome Terminal 3.18.3 .
Bearbeiten Sie Ihre .bashrc- Datei und fügen Sie diese Funktion hinzu
Vergessen Sie nicht
source
Ihre .bashrc- DateiUnd dann können Sie einfach aktualisieren und den Terminaltitel wie folgt ändern:
quelle
Meine Antwort ähnelt der neueren Antwort, die bei mir nicht funktioniert hat. Die ältesten Antworten funktionieren nicht mehr. Die mittlere alte Antwort ist zu viel geschrieben, deshalb habe ich eine Funktion in meiner
~/.bashrc
Datei erstellt:Nach dem Hinzufügen oder Ändern der Funktion oder wenn Sie den Titel ein zweites Mal zurücksetzen möchten, gehen Sie wie folgt vor:
Ansonsten tagtäglich einfach
termtitle
mit einem neuen Titel verwenden.quelle
Falls arme Seelen wie ich gezwungen sind, tcsh zu verwenden, versuchen Sie Folgendes in Ihrer .cshrc:
Quelle und weitere Details: http://tldp.org/HOWTO/Xterm-Title-4.html
quelle
Wenn Sie Gnome 3 verwenden, wurde die praktische
Terminal > Set Title
Menüoption entfernt. Sie können ein gabelförmiges Gnome 2-Terminal installieren, das noch die Menüoption "Titel festlegen" enthält, und stattdessen Folgendes ausführen:Anstatt "Terminal" auszuführen, führen Sie "MATE Terminal" aus. Sie sollten wahrscheinlich auch Mate-Terminal in auswählen
sudo update-alternatives --config x-terminal-emulator
.quelle