So legen Sie den PuTTY-Fenstertitel in Linux fest, wenn Sie einen bestimmten Befehl ausführen

359
Arno-Nymous

Diese Frage wurde von StackOverflow hierher verschoben


Ich verwende KeePass als meinen Passwort-Manager und nutze die automatische Schreibweise stark. Da die Auto-Type-Funktion nur den Fenstertitel betrachtet, um nach den Kennworteinträgen zu filtern, funktioniert sie am besten mit Fenstertiteln, die so eindeutig wie möglich sind.

Wenn ich jetzt über PuTTY bei einem meiner Server angemeldet bin, habe ich normalerweise den Fenstertitel mit einer festen Zeichenfolge wie dem Hostnamen oder so konfiguriert. Bei der Ausführung eines Befehls, der mich zur Eingabe eines Kennworts auffordert (z. B. sudooder mysql), drücke ich normalerweise den Hotkey für auto-type und es erscheint das Keepass-Fenster mit allen gefundenen Einträgen für dieses bestimmte Fenster nach dem Titel gefiltert. Leider enthält diese Liste alle Einträge für einen bestimmten Host, da ich alle Arten von Benutzerkonten und Kennwörter verwalte, die in KeePass mit diesem Host verbunden sind.

Angenommen, ich möchte mich mit Benutzer < root > bei MySQL anmelden, und der Titel meines PuTTY-Fensters ist auf < PuTTY - myhost.name > eingestellt. Wenn ich den automatischen Tastenkürzel drücke, zeigt KeePass alle Einträge an, die diesem Fenstertitel zugeordnet sind, und ich muss zuerst durch diese Liste navigieren, um den richtigen Eintrag zu finden. Also dachte ich daran, den Fenstertitel von PuTTY auf etwas wie < PuTTY - myhost.name: MySQL-Passwort für Benutzer 'root' > in Linux zu setzen, wenn mysqlich den Befehl ausführte, damit ich einen Regex-Filter //PuTTY.*myhost\.name.*MySQL.*'root'//auf meinen Passworteintrag in KeePass und in diesem Fall anwenden kann Ich würde nur diesen bestimmten Eintrag finden und ihn sofort für mich automatisch eingeben. Nachdem der Befehl ausgelöst wurde (mysql akzeptierte das Passwort und bietet mir die MySQL-Eingabeaufforderung an) Ich möchte den Fenstertitel auf den vorherigen Wert zurücksetzen.

Ist das irgendwie möglich und wenn ja, was wäre der sauberste Weg, dies zu tun?

Ich hoffe, ich habe mein Problem klargestellt. Jede Hilfe wird sehr geschätzt!

0

1 Antwort auf die Frage

0
RedGrittyBrick

Ich habe das in ~ / .bashrc

# Set Putty window title (but not for rsync) if [ "$SSH_CLIENT" == "" ]; then echo "^[]0;rgb@mybox^G" fi 

Sie könnten solche echoBefehle zu einem Skript hinzufügen, das mysql aufruft.


Siehe auch