リモートサーバーのステータスを取得するための Screenrc 設定

リモートサーバーのステータスを取得するための Screenrc 設定

私は、一連のマシンに接続するために、screen 内で ssh を頻繁に使用します。キャプション行に、ssh で接続しているサーバーに関する情報 (マシン名、稼働時間、vmstat からの情報など) が表示されるのが理想的です。

screen コマンドは screen が実行される場所でのみ実行されるようで、リモート マシンでは実行されないことに気付きましたbacktick。現在 ssh されているマシンでコマンドを実行するように backtick を取得する簡単な方法はありますか?

答え1

Screen は、ウィンドウ内のターミナルが Screen に影響を与えるために送信できるいくつかの追加の制御シーケンスを認識します。特に興味深いのは、\ek シーケンスと \e\ シーケンスでしょう。これら 2 つのシーケンスの間にあるものはすべて、Screen によってウィンドウ タイトルとして使用されます。その後、ウィンドウ タイトルをキャプション行に配置できます。

http://www.gnu.org/software/screen/manual/screen.html#index-control-sequences-107

これを試してみてください:

PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007\ek${USER}@${HOSTNAME}: ${PWD/$HOME/~}\e\\"'

私はこれをリモート システムのプロンプトとして使用します。これにより、ウィンドウ タイトルが自動的に に設定されますuser@name: path。Screen のエスケープ シーケンスは、そのコマンドの最後にあります。

関連情報