Verschieben von Fenstern zwischen GNU-Bildschirmsitzungen

11

Gibt es eine Möglichkeit, Fenster zwischen verschiedenen Bildschirmsitzungen zu verschieben?

Nehmen wir zum Beispiel an, ich habe dieses Szenario:

screen -S screen1
vim *.cpp
C-a d
screen -S screen2

Gibt es eine Möglichkeit, meine Shell mit meiner VIM-Sitzung von Bildschirm1 auf Bildschirm2 zu verschieben?

William Casarin
quelle
1
Ich glaube nicht, aber ich bin kein großer Bildschirmguru . interessante Frage, +1.
Quacksalber Quijote
2
fand eine Diskussion auf der Bildschirm-Mailingliste - lists.gnu.org/archive/html/screen-users/2008-04/msg00009.html - es ist im Moment nicht möglich und ein "Albtraum" anscheinend zu implementieren.
William Casarin

Antworten:

4

Sie können injcode verwenden, um einen Prozess zwischen ttys zu verschieben. So verschieben Sie den Prozess mit PID im Zielbildschirmfenster:

$ injcode -m retty PID

Wenn Sie jedoch die übergeordnete Bildschirmsitzung schließen, werden auch verschobene Prozesse beendet.

Edit: Ich habe mich geirrt, es funktioniert. Alles wird beschrieben hier . Angenommen, Sie möchten "htop" verschieben und es wird nur eine Instanz ausgeführt:

$ injcode -m retty $(pgrep htop)
$ pkill -SIGSTOP htop
$ pkill -SIGCONT htop

dann auf dem vorherigen Shell-Typ:

$ disown
askonecki
quelle