Einfach xterm Titel setzen?

8

es klingt wie eine dumme Frage, aber ich hoffe es ist nicht.

Ich möchte ein einfaches xterm mit einem festen Titel erstellen. Ich habe es versucht:

xterm -title whatever (that is what xterm --help suggests)

xterm -T whatever (according to man pages, this is the same as --title)

aber gut, mein xterm zeigt immer den Benutzernamen @ Hostname: ~ im Titel an. Ich vermute, dass dieser Titel von einer Umgebungsvariablen stammt. aber ich würde es vorziehen, wenn ich meine .bashrc oder .profile nicht dauerhaft ändern müsste, nur um ein xterm mit einem festen titel erstellen zu können?!

Dies ist xubuntu 14.04

GhostCat
quelle
Die Standardansagen ( PS1) legen den Titel fest. Jeder Titel, der beim Start von xterm festgelegt wird, wird beim Start von bash überschrieben.
Muru
OK, ich dachte in diese Richtung. Und das kann man nicht verhindern?
GhostCat
Ich weiß nichts über XTerm, aber GNOME Terminal hat eine Option, um zu verhindern, dass der Titel überschrieben wird. Was genau versuchst du zu erreichen? Was ist das eigentliche Problem?
Muru
Mein "Problem ist das": Ich muss ein Befehlszeilentool starten, das im Hintergrund stehen soll (Portweiterleitung für mich durchführen). Wenn ich das in meinem normalen Terminal mache ... könnte ich früher oder später dieses Terminal schließen; Vergessen Sie die Jobs, die im Hintergrund ausgeführt werden. Anstatt sie in einer Terminalsitzung zu starten, die wie jede andere Terminalsitzung aussieht; Ich möchte ein xterm mit einem Titel wie "Port-Forwarding-Sitzung!" Öffnen. ... und die Jobs dort ausführen. Nur eine sichtbarere Anzeige, um "unerwünschte" Ausgänge zu vermeiden.
GhostCat

Antworten:

19

Verwenden

xterm -xrm 'XTerm.vt100.allowTitleOps: false' -T whatever
Florian Diesch
quelle
Vielen Dank dafür. hat mir viel Zeit gespart !!
Thang
Dies funktioniert definitiv, aber nur um dies besser zu verstehen - warum ist -xrm 'XTerm.vt100.allowTitleOps: false' erforderlich? Kann ich dies zur .Xresources-Datei hinzufügen? sorry total noob hier.
Arunsun
1

Um die "Frage" aus dem Kommentar zu beantworten

Ich muss ein Befehlszeilentool starten, das im Hintergrund stehen soll (Portweiterleitung für mich)


Anstatt sich auf ein offenes xterm zu verlassen, können Sie das Programm nohupim Hintergrund ausführen , z

nohup /path/to/port-forwarding-tool 2>&1 &

nohup wird mit antworten

nohup: Eingabe ignorieren und Ausgabe an 'nohup.out' anhängen

Dadurch bleibt das Programm auch dann am Laufen, wenn Sie das xterm schließen. Wenn Sie nicht an der Ausgabe des Programms interessiert sind, leiten Sie es an weiter/dev/null

nohup /path/to/port-forwarding-tool >/dev/null 2>&1 &

Eine andere Möglichkeit wäre, das Tool als Teil Ihrer Desktopsitzung zu starten, obwohl dies möglicherweise vom verwendeten Desktop abhängt, z. B. .xsession oder Autostart-Ordner. Suchen Sie nach "Start" oder "Desktop-Autostart". Bei aktuellen Systemen sind möglicherweise auch systemd-Benutzerdienste eine Option.

Wie starte ich Anwendungen automatisch beim Login?

Autostart .desktop-Anwendung beim Start funktioniert nicht

Olaf Dietsche
quelle
Danke, aber das ist wirklich nicht das, wonach ich gesucht habe. Der springende Punkt war, irgendwo ein xterm zu haben, um mich daran zu erinnern, dass noch etwas im Hintergrund lief. xterm weg, dieser Prozess weg. Mit nohup habe ich genau das Gegenteil davon
;-)