Я сделал это, используя iTerm2 и немного AppleScript.
Вот функция для оболочек (bash или zsh), которая меняет цвет фона:
function iterm_bg_color() {
local tty=$(tty)
osascript -e "
tell application \"iTerm\"
repeat with theTerminal in terminals
tell theTerminal
try
tell session id \"$tty\"
set background color to {(($1 * 257)), (($2 * 257)), (($3 * 257))} as RGB color
end tell
on error errmesg number errn
end try
end tell
end repeat
end tell"
}
Используйте это, чтобы превратить фон в красный:
$ iterm_bg_color 255 0 0
Я также сделал несколько псевдонимов для быстрого запуска ssh от имени какого-то пользователя, вот так:
alias ssd="iterm_bg_color 30 0 0; ssh danger@somehost; iterm_bg_color 0 0 0"
Или вы можете написать оболочку, которая будет окрашивать ssh исключительно на основе пользователя. Как то так, для bash
:
function ssh() {
if [[ $1 == danger@* ]]; then
iterm_bg_color 50 0 0
/usr/bin/ssh "$@"
iterm_bg_color 0 0 0
else
/usr/bin/ssh "$@"
fi
}
или для zsh
:
function ssh() {
if [[ "$1" =~ "danger@.*" ]]; then
iterm_bg_color 50 0 0
/usr/bin/ssh $*
iterm_bg_color 0 0 0
else
/usr/bin/ssh $*
fi
}
Просто поместите iterm_bg_color
в конфигурацию вашей оболочки (~/.bash_profile
или ~/.zshrc
соответственно) и добавьте функцию ssh()
(или псевдоним), чтобы она автоматически окрашивалась при подключении.