현재 탭과 동일한 SSH 호스트 및 디렉터리를 사용하여 새 탭을 시작하도록 그놈 터미널을 어떻게 구성합니까?

현재 탭과 동일한 SSH 호스트 및 디렉터리를 사용하여 새 탭을 시작하도록 그놈 터미널을 어떻게 구성합니까?

내 소스는 vte.sh광산에 있습니다 . 이를 수행 .bashrc하는 한 가지 방법은 Bash가 . 그놈 터미널에서 새 탭을 열면 OSC 7의 정보를 사용하여 이전 탭과 동일한 디렉터리에 터미널을 엽니다."\033]7;file://$HOSTNAME$PWD\007"PROMPT_COMMANDfile://mylocalbox/home/kerrick

현재 탭이 SSH 세션을 실행 중인 경우 새 탭을 시작하면 동일한 호스트에 SSH로 연결되고 동일한 디렉터리로 변경되도록 그놈 터미널을 구성하고 싶습니다. 즉, OSC 7 값이 유사하면 기본 터미널 세션 대신 file://myremotebox/foo/bar실행됩니다 .exec ssh -t myremotebox 'cd /foo/bar && exec bash -l'

이를 위해 그놈 터미널을 어떻게 구성합니까?

답변1

이 기능은 지원하지 않으며 소스 코드를 수정해야 합니다. 외부 C++ 코드 작업에 익숙하다면 이는 매우 간단한 작업일 수 있습니다.


노트:

다양한 상황에서 작동하는 패치를 확실히 생각해 낼 수는 있지만 100% 안정적으로 처리할 수 없는 상황은 항상 존재합니다.

원격 사용자 이름이 로컬 사용자 이름과 다를 수도 있습니다. 사용자 이름은 OSC 7 시퀀스의 일부가 아니므로 원격 사용자 이름이 무엇인지 알 수 없습니다.

어쩌면 원격 호스트 이름(원격 호스트가 스스로 부르는 것)을 localhost에서 사용하여 주소를 확인할 수 없을 수도 있습니다.

어쩌면 여러 SSH 홉을 통해 사이트에 도달했을 수도 있습니다.

sshd가 기본이 아닌 포트에서 실행 중일 수 있습니다.

어쩌면 ssh가 아니라 구식 rsh/telnet이나 그와 유사한 것일 수도 있습니다.

더 있을 수 있습니다... 이와 같은 경우에는 이와 같은 기능을 주류에 포함시키기 어렵게 만들고 자주 중단됩니다(특히 사용자 이름 불일치가 실제로 유효한 문제이기 때문에). OSC 7은 당신에게 제공합니다부분의관련 정보어디세요, 그리고 당신에게 필요한 것은거기에 도착하는 방법.

관련 정보