
Nachdem ich versehentlich Strg+Alt+T gedrückt gehalten habe, werden meine Tmux-Sitzungen jetzt automatisch mit nervig hohen Nummern benannt:
llama@llama:~$ tmux ls
124: 1 windows (created Mon Jan 5 16:45:55 2015) [80x24] (attached)
Wie kann ich diese Nummer auf zurücksetzen 1
? Ich habe versucht, tmux rename-session
meine Sitzung auf eine niedrigere Nummer zu setzen, aber nachdem ich sie geschlossen und eine neue Sitzung geöffnet habe, wird die Nummerierung ab der ursprünglichen Nummer fortgesetzt.
Gibt es eine Möglichkeit, dies zu beheben, ohne tmux neu zu starten?
Antwort1
Nein, dies ist derzeit nicht möglich.
Das Einzige, was Sie tun können, ohne den Server neu zu starten, ist, den Namen beim Erstellen einer neuen Sitzung manuell zu überschreiben tmux new -s 5
, indem Sie beispielsweise Folgendes eingeben:
$ tmux new -d -P
10:
$ tmux ls
10: 1 windows (created Wed Jan 7 15:50:29 2015) [107x89]
$ tmux new -s 5 -d -P
5:
$ tmux ls
10: 1 windows (created Wed Jan 7 15:50:29 2015) [107x89]
5: 1 windows (created Wed Jan 7 15:50:40 2015) [107x89]
$ tmux new -s 5 -d -P
duplicate session: 5
Die automatische Sitzungsnummer wird durch die globale Variable u_int next_session_id
insession.c
Auf die nicht über die Befehlszeile zugegriffen werden kann, wie das Greppen des Quellcodes zeigt.
tmux new-session
ruft session_create()
ansession.c
(Zeile 88) und next_session_id
wird erhöht, wenn Sie eine neue Sitzung erstellen. Das Argument von -s
flag auf new-session
(kurz new
) setzt name
, andernfalls next_session_id
wird verwendet.
if (name != NULL) {
s->name = xstrdup(name);
s->id = next_session_id++;
} else {
s->name = NULL;
do {
s->id = next_session_id++;
free(s->name);
xasprintf(&s->name, "%u", s->id);
} while (RB_FIND(sessions, &sessions, s) != NULL);
}
Antwort2
versuchen:
tmux kill-server && tmux