2016-04-20 13 views
0

Ich benutze screen in Centos, aber der Titel des Fensters nicht nach dem Aufruf eines Befehls gespeichert.Fenstertitel in Bildschirmsitzung nicht gespeichert

Stack:

# Create a screen 
$ screen 
# Create a new window in screen 
# Ctrl + a: c 
# Set title of window 
# Ctrl + a: A 
# Write a "Some" window title (See screenshot #1) 
# Execute command "ls" 
$ ls 
# After this command the title of window will be reseted (See screenshot #2) 

Wie ich den Titel des Fensters in Bildschirm speichern kann?

P.S. Wenn ich den Dämonisierungsprozess oder einen anderen Prozess mit einer benutzerdefinierten Konsole (Redis oder PostgresSQL als Beispiel) starte, wird der Fenstertitel gespeichert.

Danke.

Screenshot #1 Screenshot #2

Antwort

0

https://www.gnu.org/software/screen/manual/screen.html#Naming-Windows

Bildschirm hat eine Shell spezifische Heuristik, die durch Einstellen der Fenster Namen suchen aktiviert ist | Namen und eine Null-Titel Escape-Sequenz ausgegeben haben, Arrangieren als Teil Ihrer Aufforderung. Der Suchabschnitt gibt eine Zeichenfolge für das Ende der Eingabeaufforderung an, während der Namensteil den Standard-Shellnamen für das Fenster angibt. Wenn der Name in einem 'endet:' Bildschirm fügt hinzu, was es als der aktuelle Befehl im Fenster bis zum Ende des angegebenen Namens (z. B. Name: cmd) zu sein glaubt. Andernfalls ersetzt der aktuelle Befehlsname den Shell-Namen, während ausgeführt wird.

So funktioniert es: Sie müssen Ihre Shell-Eingabeaufforderung ändern, um eine Null-Titel-Escape-Sequenz (k) als Teil Ihrer Eingabeaufforderung auszugeben. Der letzte Teil Ihrer Eingabeaufforderung muss mit der Zeichenfolge übereinstimmen, die Sie für den Suchabschnitt des Titels angegeben haben. Sobald dies eingerichtet ist, verwendet Bildschirm die Titel-Escape-Sequenz, um den vorherigen Befehlsnamen zu löschen und machen Sie sich bereit für den nächsten Befehl. Wenn dann eine neue Zeile von der Shell empfangen wird, wird nach dem Ende der Eingabeaufforderung gesucht. Wenn es gefunden wird, wird das erste Wort nach der übereinstimmenden Zeichenfolge abgerufen und als Befehlsname verwendet. Wenn der Befehlsname mit '!', '%' oder '^' beginnt, wird das erste Wort in der folgenden Zeile (wenn gefunden wird) anstelle des gerade gefundenen Namens verwendet. Dies hilft Csh-Benutzern, genauere Titel zu erhalten, wenn sie Job Control oder History Recall Befehle verwenden.