Jenkins プラグインを介して SSH 経由でサーバーに接続する必要があるという、少し難しい状況にあります。 フラグを渡してセッション-t
を取得し、pseudo-tty
を使用するオプションはありませんscreen
。
ネストされた SSH セッションを確立する以外に、すでに接続している場合にこれを回避する方法はありますか?
答え1
画面を使用して何かを表示する場合は、ターミナルが必要になります。
新しいセッションを開始するだけで、表示しない場合は、 を呼び出しますscreen -m -d
。セッションはデタッチされた状態で開始されます。
既存のセッションとのみやり取りしたい場合は、-X
そのセッションにコマンドを送信するオプションを使用します。これはセッションに接続せず、ターミナルを必要としません。スクリーンセッションがデタッチモードで開始された場合、その初期ウィンドウはアクティブではないため、-p
何かを行う前にウィンドウを選択する必要があります。例:
screen -d -m long-running-command
screen -p 1 -X stuff 'yes^M'
何をするにしても、おそらく再現可能なセッション名を使用し、-S
どのセッションと通信しているかがわかるように常にオプションを渡す必要があります。