web-dev-qa-db-fra.com

Comment puis-je définir le titre de la fenêtre de PuTTY sur le nom de la session chargée?

Normalement, lorsque vous chargez une session enregistrée dans PuTTY et que vous vous y connectez, PuTTY définit le titre de la fenêtre sur le nom d'hôte du système auquel vous vous êtes connecté (plus la chaîne "PuTTY").

Maintenant, j'ai de nombreuses sessions différentes qui se connectent toutes au même hôte, mais sur des ports différents (car l'hôte exécute plusieurs tunnels SSH sur différents ports). Par conséquent, voir le nom d'hôte n'est pas très utile, car il est toujours le même.

Je voudrais donc que PuTTY affiche le nom de la session chargée dans le titre de la fenêtre. Y a-t-il un moyen de faire cela?

La seule façon que j'ai pu trouver est de définir le titre de la fenêtre manuellement (Fenêtre/Comportement/Titre de la fenêtre). Mais je pense que je devrais le faire manuellement pour chaque session, ce qui est plutôt fastidieux.

29
sleske

Pour modifier le titre de la fenêtre de session PuTTY SSH (un par un manuellement par l'interface graphique PuTTY):

Pour Windows et Debian

  1. Load une session de PuTTY.
  2. Dans le menu d'arborescence de gauche, cliquez sur: WindowBehaviour.
  3. Dans le panneau de droite, dans le Window title zone de texte entrez votre titre.
  4. Save la session.

Pour modifier le titre de la fenêtre de session PuTTY SSH (pour toutes les sessions par ligne de commande):

Pour Debian 8 (Jessie)

  1. Accédez au dossier où PuTTY stocke les sessions: /home/nolwennig/.PuTTY/sessions

    Remarque: remplaceznolwennig avec votre nom d'utilisateur

  2. Attribuez au paramètre WinTitle le nom du fichier de session enregistré pour chaque fichier de session enregistré avec quelque chose comme ceci:

    find . -type f -exec sed -e 's/^WinTitle=/WinTitle=%f/g' {} \;

    Cela fonctionne bien si aucun WinTitle n'est enregistré

Pour Windows

  1. PuTTY stocke les sessions dans le registre Windows HKEY_CURRENT_USER\Software\Simontatham\PuTTY\Sessions

    Remarque: pas remplacezSimonTatham avec votre nom d'utilisateur.

  2. Vous pouvez exporter cette section avec une commande comme celle-ci:

    C:> regedit /e "%userprofile%\desktop\PuTTY-registry-sessions.reg" HKEY_CURRENT_USER\Software\Simontatham\PuTTY\Sessions
    
  3. Il doit être possible de créer un script qui met à jour le PuTTY-registry-sessions.reg fichier pour modifier la valeur de WinTitle pour chacune des sessions enregistrées.


Sources et inspirations:

17
Nolwennig

La solution ci-dessous semble résoudre ce problème.

1) Accédez au paramètre Fenêtre/Comportement/Titre de fenêtre susmentionné et insérez un titre qui vous convient.

2) Accédez aux paramètres du terminal/fonctionnalités et cochez la case Désactiver le titre de la fenêtre télécommandée boîte de changement.

Setting 1

Setting 2

49
Andy

Cette fonction définira le titre de votre fenêtre PuTTY sur la chaîne donnée:

# Set title
title() {
  echo -ne "\033]0;"$1"\007"
}

Vous pouvez l'utiliser pour définir le titre à partir de la ligne de commande ou à partir de scripts, par ex. de l'intérieur .bashrc.

17
Thomas Stuefe

Je cherchais comment coller les titres des fenêtres lors de l'utilisation de PuTTY avec des fichiers de session.

Donc, dans .PuTTY/sessions/ServerX, définissez un titre par défaut et aucun comportement à distance comme:

NoRemoteWinTitle=1
WinTitle=Welcome to ServerX

Et pour lui donner un titre spécial dans un but particulier, remplacez simplement la valeur par défaut:

PuTTY -load .PuTTY/sessions/ServerX -title "ServerX:/var/log/messages"
3
DCG

La seule autre voie que je connaisse est d'utiliser les fonctionnalités d'émulation xterm pour définir le titre à partir du système auquel vous êtes connecté (sur Red Hat Linux et SUSE Linux, l'invite Bash est écrite dans la barre de titre par défaut).

Voir cette page pour une description du processus et de la séquence d'échappement appropriée.

2
symcbean

Vous pouvez utiliser le -loghost "title" option dans Windows - il ouvre PuTTY avec le nom title spécifié. Cela change également d'autres choses, alors veuillez vérifier si cela ne vous pose aucun autre problème.

Je l'utilise avec VIRL, et cela fonctionne parfaitement bien.

0
Marceli

Sous Windows, cela définira le titre de la fenêtre de chaque session sur le même nom de la session:

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
0
user517940