Cum pot seta titlul ferestrei PuTTY la numele sesiunii încărcate? (Administrarea sistemului, Putty)

sleske a intrebat.

În mod normal, atunci când încărcați o sesiune salvată în PuTTY și vă conectați la ea, PuTTY va seta titlul ferestrei la numele de gazdă al sistemului la care v-ați conectat (plus șirul „PuTTY”).

Acum am mai multe sesiuni diferite care se conectează toate la aceeași gazdă, dar pe porturi diferite (deoarece gazda rulează mai multe tuneluri SSH pe porturi diferite). Prin urmare, a vedea numele gazdei nu este foarte util, deoarece este întotdeauna același.

Așadar, aș dori ca PuTTY să afișeze numele sesiunii încărcate în titlul ferestrei. Există o modalitate de a face acest lucru?

Singura modalitate pe care am găsit-o este să setez manual titlul ferestrei (Window / Behaviour / Window title). Dar cred că ar trebui să fac acest lucru manual pentru fiecare sesiune, ceea ce este destul de anevoios.

Comentarii

  • Kitty este cel mai bun client telnet / SSH (bifurcație a lui Putty) și puteți seta titlul ferestrei din linia de comandă prin opțiunea „-title”. –  > Por Mareg.
8 răspunsuri
Nolwennig

Pentru a schimba titlul ferestrei sesiunii SSH PuTTY (unul câte unul manual de către GUI PuTTY):

Pentru Windows & Debian

  1. Load o sesiune din PuTTY.
  2. În partea stângă a meniului arborescent, faceți clic pe: WindowBehaviour.
  3. În panoul din dreapta, în secțiunea Window title caseta de text introduceți titlul dvs.
  4. Save sesiunii.

Pentru a modifica titlul ferestrei sesiunii SSH PuTTY SSH (pentru toate sesiunile prin linie de comandă):

Pentru Debian 8 (Jessie)

  1. Accesați folderul în care PuTTY stochează sesiunile: /home/nolwennig/.putty/sessions

    Notă: înlocuiți nolwennig cu numele dvs. de utilizator

  2. Atribuiți parametrului WinTitle numele fișierului de sesiune salvat pentru fiecare fișier de sesiune salvat, cu ceva de genul acesta

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

    Funcționează bine dacă nu este înregistrat niciun WinTitle

Pentru Windows

  1. PuTTY stochează sesiunile în registrul Windows HKEY_CURRENT_USERSoftwareSimontathamPuTTYSessions

    Notă: nu înlocuiește SimonTatham cu numele dvs. de utilizator.

  2. Puteți exporta această secțiune cu o comandă ca aceasta:

    C:> regedit /e "%userprofile%desktopputty-registry-sessions.reg" HKEY_CURRENT_USERSoftwareSimontathamPuTTYSessions
    
  3. Trebuie să fie posibil să se facă un script care să actualizeze secțiunea putty-registry-sessions.reg pentru a schimba valoarea lui WinTitle pentru fiecare dintre sesiunile salvate.


Surse & inspirații:

  • kurumi pentru https://stackoverflow.com/a/5456142/4457531
  • brandizzi pentru https://stackoverflow.com/a/6739322/4457531
  • FGreg pentru https://stackoverflow.com/a/13012743/4457531
  • m0nhawk pentru https://stackoverflow.com/a/13023979/4457531

Comentarii

  • Știu că pot face asta – este menționat în întrebarea mea, împreună cu motivul pentru care caut o soluție diferită. –  > Por sleske.
  • Îmi actualizez răspunsul cu un mic script –  > Por Nolwennig.
  • O idee îngrijită cu scriptul. Cu toate acestea, AFAIK, Putty stochează în mod implicit sesiunile în registrul Windows. Dacă al tău folosește fișiere, probabil că folosești o versiune modificată (deși ar putea funcționa în continuare prin exportul/importul configurației). Ați putea menționa acest lucru în răspuns? –  > Por sleske.
  • Sunt pe Debian8 aici, adaug locația de stocare a sesiunilor Putty pentru Windows în răspunsul meu, dar nu pot să scriu/testez un script pentru asta acum : ( – –  > Por Nolwennig.
  • A, da, am uitat că PuTTY are și o versiune pentru Linux. Oricum, frumos răspuns, mulțumesc. –  > Por sleske.
Andy

Soluția de mai jos pare să rezolve această problemă.

1) Mergeți la setarea Window/Behaviour/Window Title (Fereastră/ Comportament/Titlu fereastră) menționată mai sus și puneți un titlu care are sens pentru dvs.

2) Mergeți la setările Terminal/Features (Terminal/Funcții) și bifați opțiunea Disable remote-controlled window title (Dezactivați titlul ferestrei controlate de la distanță). schimbarea ferestrei din fereastră.

Comentarii

  • Deși acest lucru poate răspunde la întrebare, este de preferat dacă puteți rezuma răspunsul aici, deoarece linkurile mor în timp. –  > Por Ladadadada.
  • Aceasta este procedura descrisă pe site-ul respectiv: În fereastra de configurare a sesiunii putty activați caseta de selectare intitulată „Disable remote-controlled window title changing” (Dezactivați schimbarea titlului ferestrei de la distanță) care se găsește la Terminal->Features. Apoi, dați un nume ferestrei de sesiune prin intermediul ferestrei Window->Behaviour dialog. Introduceți titlul în caseta de text etichetată „Window title:” –  > Por BdN3504.
  • Acesta ar trebui să fie răspunsul. +1 –  > Por Kulasangar.
  • Acesta ar fi trebuit să fie răspunsul acceptat. Fără acest al doilea punct, titlul meu se tot reseta de îndată ce apăsam tasta enter. (gazdă: Windows, server la distanță: Ubuntu Server 16.04 LTS) – –  > Por Zeeshan.
Thomas Stuefe

Această funcție va seta titlul ferestrei PuTTY la șirul dat:

# Set title
title() {
  echo -ne "33]0;"$1"07"
}

Puteți folosi această funcție pentru a seta titlul din linia de comandă sau din scripturi, de exemplu, din cadrul .bashrc.

Comentarii

  • De ce funcționează această funcție? –  > Por Chad.
  • Doar o mică notă; Tot trebuie să setați "Disable remote-controlled window title changing" la Terminal->Features –  > Por 244an.
  • Este posibil să doriți să utilizați printf comanda în schimb. –  > Por MUY Belgia.
  • De ce funcționează acest lucru? : ESC ] 0 ; txt ST Setați numele pictogramei și titlul ferestrei în txt. –  > Por Koshinae.
DCG

Căutam cum să fac ca titlurile ferestrelor să se lipească atunci când folosesc PuTTY cu fișiere de sesiune.

Astfel, în .putty/sessions/ServerX, , setați un titlu implicit și nici un comportament la distanță ca:

NoRemoteWinTitle=1
WinTitle=Welcome to ServerX

Și pentru a da un titlu special pentru un anumit scop, doar suprascrieți valoarea implicită:

putty -load .putty/sessions/ServerX -title "ServerX:/var/log/messages"

symcbean

Singura altă cale pe care o cunosc este să folosiți funcțiile de emulație xterm pentru a seta titlul din sistemul în care sunteți conectat (pe Red Hat Linux și SUSE Linux, promptul Bash este scris în mod implicit în bara de titlu).

Consultați această pagină pentru o descriere a procesului și a secvenței de scăpare relevante.

Comentarii

Marceli

Puteți folosi -loghost "title" opțiune în Windows – deschide PuTTY cu numele de utilizator specificat. titlul nume. Schimbă și alte chestii, așa că te rog să verifici dacă asta nu îți face alte probleme.

Eu o folosesc cu VIRL și funcționează perfect.

user517940

În Windows, acest lucru va seta titlul ferestrei fiecărei sesiuni la același nume al sesiunii:

FOR /F "tokens=6 delims=" %i IN ('reg query HKCUSoftwareSimontathamPuTTYSessions') DO reg add HKCUSoftwareSimontathamPuTTYSessions%i /t REG_SZ /v WinTitle /d %i /f & reg add HKCUSoftwareSimontathamPuTTYSessions%i /t REG_DWORD /v NoRemoteWinTitle /d 1 /f

Giuseppe Costanzo

În Windows, această linie cmd va seta titlul ferestrei fiecărei sesiuni la chiar același nume al sesiunii:

FOR /F "tokens=6 delims=" %i IN ('reg query HKCUSoftwareSimontathamPuTTYSessions') DO reg add HKCUSoftwareSimontathamPuTTYSessions%i /t REG_SZ /v WinTitle /d %i /f & reg add HKCUSoftwareSimontathamPuTTYSessions%i /t REG_DWORD /v NoRemoteWinTitle /d 1 /f

Tags: