SSH 연결을 설정할 때 기본적으로 tmux를 사용하고 싶습니다. 이는 다음과 같은 명령과 잘 작동합니다.
ssh host.example.com -t 'tmux a || tmux || /bin/bash'
이것을 ProxyCommand의 일부로 내부에 넣을 수도 있지만 ~/.ssh/config
문제는 원격 시스템에서 다른 명령을 실행하는 스크립트의 일부로 SSH 연결도 수행하고 있으며 이 경우 tmux를 원하지 않는다는 것입니다.
tmux 호출이 투명하고 매개변수/명령 없이 ssh가 수집될 때만 발생하도록 이 동작을 달성하려면 어떻게 해야 합니까?
답변1
당신은 바퀴를 다시 발명하고 있습니다.
- 설치하다비요보.
byobu-enable
답변2
이것을 다음에 추가하여 해결되었습니다 ~/.bashrc
.
function ssh() {
if [ "$#" == "1" ]; then
if [ "${1:0:1}" != "-" ]; then
/usr/bin/ssh "$@" -t 'tmux a || tmux || /bin/bash'
else
/usr/bin/ssh "$@";
fi
else
/usr/bin/ssh "$@";
fi
}