Переміщення вікон між сеансами екрану GNU


11

Чи є спосіб переміщення вікон між різними сеансами екрана?

Наприклад, скажімо, що у мене такий сценарій:

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

Чи можна перенести оболонку, що містить мій сеанс vim, з екрана1 на екран2?


1
Я так не думаю, але я не дуже гуру екрану . цікаве запитання, +1.
шарлатаний кіхот

2
знайшов дискусію в списку розсилки на екрані - списки.gnu.org/archive/html/screen-users/2008-04/msg00009.html - наразі це неможливо, і «кошмар», мабуть, здійснити.
Вільям Касарін

Відповіді:


4

Ви можете використовувати injcode для переміщення процесу між ttys. Щоб перемістити процес із запуском PID у вікні цільового екрана:

$ injcode -m retty PID

Однак, коли ви закриєте батьківський сеанс Екран, переміщені процеси також припиняться.

Редагувати: я помилявся, це працює. Все описано тут . Припустимо, ви хочете перемістити "htop" і працює лише один екземпляр:

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

потім про попередній тип оболонки:

$ disown
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.