Ubah warna terminal berdasarkan sesi SSH


28

Apakah mungkin untuk secara otomatis mengubah warna terminal berdasarkan pada server mana saya terhubung melalui SSH?

Sebagai contoh, ketika saya menjalankan terminal itu memiliki warna standar yang ditentukan di bawah profil saya. Lalu saya ssh ke ssh.example.com dan warnanya berubah menjadi hitam & hijau. Kemudian saya keluar dari sesi dan warnanya kembali ke tema warna standar.

Saya tahu Anda bisa melakukan ini secara manual. Tapi saya mencari cara otomatis.

Jawaban:


23

Ya, Anda bisa dengan mengubah PS1nilai dalam .bashrcfile pada setiap nama host tempat Anda terhubung ssh.

Lihat jawaban ini untuk melihat bagaimana cara mengkustomisasi sesuai keinginan bash yang mengubah PS1nilainya.

ssh berwarna

Di mesin saya (radu @ Radu) saya miliki di .bashrc:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;35m\]\u@\h\[\033[00m\]:\[\033[01;34m\] \w\[\033[01;37m\] > '

Di mesin yang dihosting (radu @ ubuntu) saya punya:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;35;40m\]\u@ubuntu\[\033[00;40m\]:\[\033[01;34;40m\] \w\[\033[01;32;40m\] > '

5
Bagaimana tepatnya Anda berhasil mengubah warna latar belakang?
chrisg86

Kode '3x' mengubah warna latar depan. kode '4x' mengubah warna latar belakang. Perhatikan bahwa mesin yang dihosting memiliki kode '4x', tetapi lokal tidak. arwin.net/tech/bash.php
FlipMcF

Apakah ada cara untuk mendapatkan hasil yang sama tanpa mengubah apa pun di kotak remote? Kami menggunakan VM, dan perubahan tidak akan bertahan lama ...
Christian

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.