답변1
이를 달성하는 한 가지 방법은 LocalCommand
함수를 사용하는 것입니다 ssh
. 이 방법을 사용하면 원격 호스트에 성공적으로 연결한 후 터미널 제목을 변경하는 데 사용되는 이스케이프 문자열이 인쇄됩니다.
~/.ssh/config
다음을 포함하도록 편집하거나 생성하십시오 .
Host *
PermitLocalCommand yes
LocalCommand printf '\033]0;%%s\007' '%h'
이 방법의 단점은 원격 서버에서 로그아웃한 후에도 헤더가 변경된 상태로 유지된다는 것입니다. 다음을 통해 이 문제를 해결할 수 있습니다.
printf '\033]0;%s\007' "$(uname -n)"
이를 자동화하려면 다음 기능을 사용할 수 있습니다.
lssh () {
/path/to/ssh "$@"
printf '\033]0;%s\007' "$(uname -n)"
}
이 답변은 터미널 에뮬레이터가 다음을 사용한다고 가정합니다.동일한 이스케이프 시퀀스XTerm으로. 그렇지 않은 경우 특정 터미널 에뮬레이터에 대한 설명서를 확인해야 합니다.
GNU 화면의 경우 단일 터미널 창에 여러 개의 가상 창이 포함될 수 있다는 점에 유의하세요. 이 경우 다른 이스케이프 시퀀스( \033k%s\033\\
)를 사용하여 단일 가상 창의 내부 제목을 설정할 수 있습니다.