GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Ssh – Stellen Sie die Terminalfarben des lokalen Computers so ein, dass sie die Farben des Computers verwenden, auf den ich ssh?

Ich habe ein Farbschema, das mir gefällt, wenn ich mich in einem Terminal befinde, aber ich ssh in den Computer, an dem ich arbeite, aus mehreren Quellen (lokal, PuTTY, mein Netbook usw.) und ich möchte das gleiche Farbschema beibehalten . Ist das möglich?

Ich möchte es besonders in PuTTY; Es ist schwierig, PuTTY-Farben zu ändern.

Akzeptierte Antwort:

Farben in Terminals werden in zwei Schritten bestimmt:

  • das im Terminal laufende Programm weist das Terminal an, eine bestimmte Farbnummer zu verwenden;
  • das Terminal übersetzt jede Farbnummer in einen Farbwert.

Xterm hat eine Escape-Sequenz, um den mit einer Farbnummer verknüpften Farbwert zu ändern. Ich erinnere mich nicht, ob PuTTY diese Sequenz unterstützt; Ich weiß, dass Mintty das tut.

set_color_value () {
  printf "\e]4;$1;$2\a"
}
set_color_value 4 '#6495ed'  # set color 4 (blue) to CornflowerBlue

Diese Einstellungen überleben einen Terminal-Reset nicht. Sie können diese Schwierigkeit überwinden, indem Sie die Sequenz zum Ändern der Cursorkonfiguration an die Reset-Zeichenfolge Ihres Terminals anhängen.

  • Speichern Sie auf einem Termininfo-basierten System mit ncurses die Termininfo-Einstellungen Ihres Terminals in einer Datei mit infocmp >>~/etc/terminfo.txt . Bearbeiten Sie die Beschreibung, um den rs1 zu ändern (Grundreset) Ablauf, z.B. ersetzen Sie rs1=Ec von rs1=EcE]4;4;#6495edE\ . Bei einigen Programmen und Einstellungen müssen Sie möglicherweise den rs2 ändern (vollständiger Reset) ebenfalls. Kompilieren Sie dann die terminfo-Beschreibung mit tic ~/etc/terminfo.txt (dies schreibt unter das Verzeichnis $TERMINFO , oder ~/.terminfo falls nicht gesetzt).
  • Auf einem Termcap-basierten System holen Sie sich die Termcap-Einstellungen aus Ihrer Termcap-Datenbank (normalerweise /etc/termcap ). Ändern Sie is (Grundreset) und rs (vollständiger Reset) Sequenzen zum Anhängen Ihrer Einstellungen, z. :is=EcEcE]4;4;#6495edE\: . Legen Sie das TERMCAP fest Umgebungsvariable auf den bearbeiteten Wert (beginnend und endend mit : ).

Jetzt können Sie so etwas in Ihr ~/.profile einfügen :

if [ "$(ps -p $PPID -o comm=)" = sshd ] &&
   [ "$TERM" = "xterm" ]; then
  set_color_value … # set color scheme
  TERMCAP=…  # if necessary
fi

Linux
  1. Verwenden Sie XMLStarlet, um XML im Linux-Terminal zu parsen

  2. Xorg so einstellen, dass nur ein Teil des Bildschirms verwendet wird?

  3. Festlegen der Vim-Hintergrundfarben

  4. Wie kann ich zurück zum lokalen scp, wenn ich bereits auf den Remote-Computer geshshed habe?

  5. So erstellen Sie ein webbasiertes Terminal mit xterm.js, um per SSH in ein System im lokalen Netzwerk zu gelangen

Ändern Sie das Farbthema Ihres Linux-Terminals

Wie listet man die verfügbaren Farbnamen auf?

DER EINFACHE WEG, wie man SSH in Bash und WSL2 unter Windows 10 von einem externen Computer aus macht

So führen Sie SSH in WSL2 unter Windows 10 von einem externen Computer aus

Wie man SSH in einen Windows 10-Rechner von Linux ODER Windows ODER überall her einfügt

So richten Sie ein Registerkartenprofil in Windows Terminal ein, um automatisch SSH in eine Linux-Box einzubinden