Đây là những gì tôi đã làm trên máy Mac của mình. Đối với mọi máy chủ, tôi thêm một mục nhập cho nó trong tệp ~ / .ssh / config của mình, vd
Host app13
HostName server.example.com
User tom
PermitLocalCommand yes
LocalCommand osascript %d/bin/change_terminal_colours.scpt 12 35 35
Bản sao này được kích hoạt sau khi phiên SSH được thiết lập. Nó đặt màu nền của thiết bị đầu cuối thành các giá trị RGB được cung cấp (hoặc trở về mặc định nếu không có giá trị màu nào được cung cấp). Phần khó khăn tiềm tàng là chặn kết thúc phiên SSH để đặt màu trở lại mặc định. Vì thế, tôi đã tạo tập lệnh shell sau đây là ~ / bin / ssh để ghi đè lệnh ssh mặc định. Điều này về cơ bản chặn và kết thúc mọi cuộc gọi đến lệnh SSH. Tôi đã thử sử dụng răng cưa và các chức năng, nhưng giải pháp này hoạt động tốt nhất:
#!/bin/bash
/usr/bin/ssh $@
osascript ~/bin/change_terminal_colours.scpt
Đây là nguồn cho tập lệnh change_terminal_colours.scpt . Đặt cái này trong thư mục ~ / bin của bạn cũng:
on run argv
tell application "Terminal"
# NOTE: Color values range from 0 to 65535.
if (count of argv) > 0 then
set backgroundColor to {(item 1 of argv) * 256, (item 2 of argv) * 256, (item 3 of argv) * 256}
else
set backgroundColor to background color of default settings
end if
try
set background color of (selected tab of front window) to backgroundColor
end try
end tell
end run
Tôi đã viết giải pháp này một tuần trước và đã sử dụng nó kể từ đó. Tôi hy vọng những người khác tìm thấy nó có giá trị. Tôi thấy nó hoạt động tốt hơn bất kỳ giải pháp nào tôi tìm thấy bởi Googling.