別の端末からリモートで画面を分離する方法

別の端末からリモートで画面を分離する方法

だから私の前に2つの端末が開いています。

  1. /dev/pts/1 - 'コントローラ'
  2. /dev/pts/2 - 「受信者」

私は現在使用していますティエホ/pts1から/pts2のコマンドを実行します。
/pts1 に画面を一覧表示ttyecho -n /dev/pts/2 screen -lsし、/pts2 で結果を表示できます。
/pts1から/pts2まで画面にうまく接続できますttyecho -n /dev/pts/2 screen -x [blah]。しかし、私ができないことは、画面に接続されている間に画面から切り離すことです。

だから/dev/pts/2が画面の中にある場合、/dev/pts1でttyechoを使ってコマンドを実行して分離を試みました。

送ろうとしましたが…

ttyecho -n /dev/pts/2 ^a+d  
ttyecho -n /dev/pts/2 screen -d -r 
ttyecho -n /dev/pts/2 screen -D -RR
ttyecho -n /dev/pts/2 screen -d -r
ttyecho -n /dev/pts/2 screen -DRi
ttyecho -n /dev/pts/2 Ctrl+a+d
ttyecho -n /dev/pts/2 Ctrl+a d
ttyecho -n /dev/pts/2 CTRL + A
ttyecho -n /dev/pts/2 control+a

だから私が必要とするものは次のとおりです。

  • 画面を分離するように指示することができます。または
  • どういうわけか別の画面に擬似キーボードコマンドを送信してttyecho切り離します。

どんな助けでも大変感謝します。

答え1

あなたはできます

$ screen -ls

以下のように、すべての画面セッションが一覧表示されます。

There are screens on:
        8365.pts-6.vm2    (Attached)
        7317.pts-1.vm2    (Attached)
2 Sockets in /var/run/screen/S-root.

その後、画面IDを使用してすべての画面セッションを分離できます。

たとえば、

$ screen -d 8365
[8365.pts-6.vm2 detached.]

答え2

セッションのttyecho分離に使用する代わりに、次のように要求できます。screenscreen

screen -d pts-2

これにより、「pts-2」という名前と一致するセッションが分離され、デフォルトで開始されたスクリーンセッションと一致しますpts/2

関連情報