Często loguję się na różne serwery z okna terminala os x.
Chciałbym przypisać schemat kolorów dla różnych hostów, aby moje okna terminali były łatwiejsze do odróżnienia. Czy można to zrobić automatycznie?
Oto kompletne rozwiązanie. Zachowaj listę adresów IP serwerów i / lub domen oraz kolory, które chcesz dla nich w ~ / .server_colors:
192.168.122.102, Czerwone Piaski 192.168.122.103, Ocean www.foo.com, Grass foo.com, Grass
Następnie dodaj ten wiersz do ~ / .profile, aby przejąć polecenie ssh:
alias ssh = "~ / bin / safe_ssh $ 1"
Następnie porównaj cokolwiek po @ w twoim celu ssh z twoją listą. W przypadku dopasowania uruchom skrypt AppleScript, aby zmienić ekran na odpowiedni kolor. Oto ~ / bin / safe_ssh:
#! / bin / bash ip = `echo $ 1 | cut -d "@" -f2` match = `cat ~ / .server_colors | grep $ ip | wc -l` jeśli [$ dopasowanie -gt 0] następnie color = `cat ~ / .server_colours | grep $ ip | cut -f2 -d "," ' osascript ~ / bin / change_terminal_color.scpt "$ color" 2> / dev / null fi / usr / bin / ssh $ 1
I na koniec, oto ~ / bin / change_terminal_color.scpt
w biegu argv powiedz aplikacji „Terminal”, aby ustawiła bieżące ustawienia wybranej zakładki okna 1 na (pierwszy zestaw ustawień, którego nazwa to (pozycja 1 argv)) koniec biegu
Większość tego kodu wziąłem z tego postu na blogu .
Tak.
Możesz użyć np. „Ekranu” i dostosować go: http://www.slac.stanford.edu/comp/unix/package/epics/extensions/iocConsole/screen.1.html
Lub jeśli to możliwe, możesz to zrobić na kliencie SSH.
Możesz także spróbować: http://www.cyberciti.biz/faq/bash-shell-change-the-color-of-my-shell-prompt-under-linux-or-unix/
źródło
Rozwiązanie @muirbot działa dla mnie naprawdę dobrze. Wprowadziłem kilka drobnych usprawnień. Dodam go poniżej jego posta, gdy będę miał wystarczająco dużo reputacji.
Zamień linię
zTa zmiana pozwala na podanie dodatkowych argumentów do polecenia ssh, takich jak „ssh -p 1111 nazwa_użytkownika @ host”
Wyrażenie regularne pozwala na proste adresy IPv4 i nazwy domen.
Aby dalej obsługiwać wiele argumentów, zmień ostatni wiersz na
źródło
Właśnie szukałem tego samego i znalazłem ten artykuł:
http://akrabat.com/php/osx-terminal-colours/
Używa skryptu php do zmiany kolorów terminala przez applecript. Możesz skonfigurować mapowania w różnych kolorach dla każdego serwera. Działa świetnie dla mnie, choć czuję potrzebę przepisania php na ruby :)
fk
źródło
Używam skryptu, który uruchamia SSH w oknach xterm z różnymi kolorami bg / fg. Wybiera kolory na podstawie skrótu nazwy hosta z zakresu kolorów, dzięki czemu nie jest wymagana konfiguracja.
Skrypt jest napisany w języku Ruby: https://github.com/mickeyil/ssx
źródło
Jeśli używasz iTerm2, utwórz plik o nazwie
~/bin/ssh-host-color.sh
z zawartością z https://gist.github.com/jbochi/31f118b8ae2882a2c90fa46c46509b57 :I dodaj następujący wiersz do swojego
~/.aliases.sh
pliku:źródło