답변:
나는 다음을 사용하고 있습니다.
myssh
content 라는 쉘 명령을 사용하십시오 .
PROFILE="$1";shift;
DEF="Basic" #the default profile name
echo "tell app \"Terminal\" to set current settings of first window to settings set \"${PROFILE}\""|osascript
ssh $@
echo "tell app \"Terminal\" to set current settings of first window to settings set \"${DEF}\""|osascript
다음과 같이 연결에 bash 별명을 사용하십시오.
alias ssweb='myssh Homebrew user@web.example.com'
alias ssmail='myssh Ocean me@mail.example.com'
웹 서버에 넣고 싶을 때 간단히 ssweb
터미널에 쓰고 "Homebrew"프로파일을 얻었습니다. ssh 세션이 종료되면 AppleScript는 "기본"으로 다시 설정됩니다.
별명은 $ HOME / .profile 또는 유사한 bash-startup 파일로 이동해야합니다.
"Homebrew", "Ocean"등은 Terminal.app 환경 설정의 설정 프로파일입니다. 다른 글꼴, 인코딩 등을 설정할 수도 있습니다.
물론 다음과 같이 직접 별명없이 사용할 수 있습니다.
myssh Pro user@another.machine.example.com
^ ^
| ssh command arguments
terminal profile name
이미 몇 가지 답변이 있지만 다음과 같은 대안이 있습니다.
배경색을 변경하는 일반적인 방법은 없지만 표준 방법을 사용하여 창 제목을 변경할 수 있습니다. "Unix 서버"이외의 많은 장치 (예 : 네트워크 장치, 라우터, 스위치, 방화벽 등)에 로그인하는 경우 해당 쉘을 사용해야하며 고유 한 쉘 변수를 설치할 수 없습니다. 여기 또 다른 방법이 있습니다.
function ssh() {
H=$(echo $@ | sed -e 's/.*@//g;s/ .*//g')
echo $@ | grep '@' && U=$(echo $@ | sed -e 's/@.*//g;s/.* //g')
echo -ne "\033]0;${U:=$(whoami)}@${H%%.*}\007"
unset H
unset U
/usr/bin/ssh $@
}
에 추가하십시오 .bashrc
.
기본적으로 함수와 별칭이 경로를 찾는 것보다 선호되므로 ssh 명령을 사용하고 "@"앞뒤에있는 텍스트를 사용하여 HOST 및 USER 변수를 설정 한 다음 ASCII 코드를 인식하는 ASCII 코드를 에코합니다. 터미널과 제목을 설정하는 데 사용됩니다.
"ssh -l user host.blah"가 아니라 "ssh user@host.blah"를 사용해야합니다.
사용자 이름을 제공하지 않으면 현재 사용자 이름으로 설정됩니다 (분명히 많이 사용하는 사용자 지정 .ssh / config를 사용하는 경우 이것은 정확하지 않지만 충분하다고 생각합니다. 유용합니다.