通常、保存したセッションをPuTTYにロードして接続すると、PuTTYはウィンドウタイトルを接続先のシステムのホスト名(および文字列 "PuTTY")に設定します。
これで、同じホストに接続するさまざまなセッションが多数ありますが、ポートは異なります(ホストが異なるポートで複数のSSHトンネルを実行するため)。したがって、ホスト名は常に同じなので、ホスト名を確認してもあまり役に立ちません。
ロードされたセッションの名前をウィンドウタイトルに表示するには、PuTTYを使用します。これを行う方法はありますか?
私が見つけることができる唯一の方法は、ウィンドウタイトルを手動で設定することです(ウィンドウ/動作/ウィンドウタイトル)。しかし、私はこれをセッションごとに手動で行う必要があると思います。これはかなり退屈です。
WindowsおよびDebianの場合
Load
PuTTYからのセッション。- 左側のツリーメニューで、
Window
→Behaviour
をクリックします。- 右側のパネルの[
Window title
]テキストボックスにタイトルを入力します。Save
セッション。
Debian 8(Jessie)の場合
PuTTYがセッションを保存するフォルダーに移動します:
/home/nolwennig/.PuTTY/sessions
注:
nolwennig
をユーザー名に置き換えてください保存された各セッションファイルの保存されたセッションファイル名をパラメータ
WinTitle
に次のように割り当てます。
find . -type f -exec sed -e 's/^WinTitle=/WinTitle=%f/g' {} \;
WinTitleが記録されていない場合は正常に動作します
Windowsの場合
PuTTYはセッションをWindowsレジストリに保存します
HKEY_CURRENT_USER\Software\Simontatham\PuTTY\Sessions
注:notreplace
SimonTatham
あなたのユーザー名で。このセクションは、次のようなコマンドでエクスポートできます。
C:> regedit /e "%userprofile%\desktop\PuTTY-registry-sessions.reg" HKEY_CURRENT_USER\Software\Simontatham\PuTTY\Sessions
保存された各セッションのWinTitleの値を変更するために
PuTTY-registry-sessions.reg
ファイルを更新するスクリプトを作成できる必要があります。
ソースとインスピレーション:
以下の解決策はこの問題を解決するようです。
1)前述のWindow/Behaviour/Window Title設定に移動し、わかりやすいタイトルを付けます。
2)[ターミナル/機能]設定に移動し、[リモート制御ウィンドウのタイトルを無効にする]チェックボックスをオフにします。
この関数は、PuTTYウィンドウのタイトルを指定された文字列に設定します。
# Set title
title() {
echo -ne "\033]0;"$1"\007"
}
これを使用して、コマンドラインまたはスクリプトからタイトルを設定できます。 .bashrc内から。
セッションファイルでPuTTYを使用するときにウィンドウタイトルを固定する方法を探していました。
だから.PuTTY/sessions/ServerX
、次のようにデフォルトのタイトルを設定し、リモートの動作を設定しません。
NoRemoteWinTitle=1
WinTitle=Welcome to ServerX
また、特定の目的のために特別なタイトルを付けるには、デフォルトをオーバーライドします。
PuTTY -load .PuTTY/sessions/ServerX -title "ServerX:/var/log/messages"
私が認識している他の唯一のルートは、xtermエミュレーション機能を使用して、ログインしているシステムからタイトルを設定することです(Red Hat LinuxおよびSUSE Linuxでは、Bashプロンプトはデフォルトでタイトルバーに書き込まれます)。
プロセスの説明および関連するエスケープシーケンスについては、 このページ を参照してください。
-loghost "title"
Windowsのオプション-指定されたtitle名前でPuTTYを開きます。他の設定も変更するので、他の問題が発生していないか確認してください。
VIRLで使用していますが、問題なく動作します。
Windowsでは、これにより、すべてのセッションのウィンドウタイトルがセッションのまったく同じ名前に設定されます。
FOR /F "tokens=6 delims=\" %i IN ('reg query HKCU\Software\Simontatham\PuTTY\Sessions') DO reg add HKCU\Software\Simontatham\PuTTY\Sessions\%i /t REG_SZ /v WinTitle /d %i /f & reg add HKCU\Software\Simontatham\PuTTY\Sessions\%i /t REG_DWORD /v NoRemoteWinTitle /d 1 /f