GNU画面セッション間でウィンドウを移動する


11

異なる画面セッション間でウィンドウを移動する方法はありますか?

たとえば、このシナリオがあるとしましょう。

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

vimセッションを含むシェルをscreen1からscreen2に移動する方法はありますか?


1
私はそうは思いませんが、私はスクリーンの第一人者ではありません。興味深い質問、+ 1。
いんちきキホーテ

2
screenメーリングリスト-lists.gnu.org/archive/html/screen-users/2008-04/msg00009.htmlで議論を見つけました- 現時点では不可能であり、明らかに「悪夢」を実装することはできません。
ウィリアムカサリン

回答:


4

injcodeを使用して、tty間でプロセスを移動できます。ターゲット画面ウィンドウでPIDを実行してプロセスを移動するには:

$ injcode -m retty PID

ただし、親Screenセッションを閉じると、移動したプロセスも終了します。

編集:私は間違っていた、それは動作します。すべてがここで説明されています。「htop」を移動し、1つのインスタンスのみが実行されているとします。

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

次に、前のシェルタイプで:

$ disown
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.