내 시스템에 .bashrc가 있는 경우 어떻게 TMUX를 호출할 수 있나요?

내 시스템에 .bashrc가 있는 경우 어떻게 TMUX를 호출할 수 있나요?

나는 대부분의 상자에서 tmux를 사용하지만 전부는 아닙니다.

내 .bashrc 파일에 다음 줄이 있습니다.

[ -z "$TMUX" ] && export TERM=xterm-256color && exec tmux

tmux가 존재하면 이를 호출합니다.

아이디어이는 [ -z $TMUX ]tmux가 존재하는 경우에만 사용된다는 것을 의미합니다.

그러나 tmux가 없는 다른 시스템에서는 다음과 같은 결과를 얻습니다.

-bash: 실행: tmux: 찾을 수 없음

그리고 로그인 시도가 실패합니다

내 메인 시스템에는

$ echo $TMUX
/private/var/folders/ks/266xy5lj7x35gfj4csc66444b48rvq/T/tmux-373580663/default,55084,4

나도 시도했지만 [ $TMUX ](예: 없이 -z) 도움이 되지 않았습니다.

또한 Ubuntu 및 OSX를 위한 강력한 솔루션을 찾고 있습니다.

답변1

echo $TMUX회의 중에 이런 일을 했나요 tmux? TMUX세션에서만 설정되기 때문입니다 .

시도 해봐:

[ -z "$TMUX" ] && command -v tmux >/dev/null && TERM=xterm-256color exec tmux

답변2

tmux좋습니다. 존재할 때만 시작하고 싶다면$PATH 그리고아직 실행되지 않은 경우 다음을 수행할 수 있습니다.

command -v tmux >/dev/null && ${TMUX+:} TERM=xterm-256color exec tmux

더 짧게:

tmux -c "${TMUX+!} :" 2>/dev/null && exec tmux -2

두 번째 요구 사항은 tmux설정되지 않은 경우 0을 반환하고, true인 경우 셸은 256색을 적용합니다. 실행할 수 있고 환경 변수가 존재하지 않는 경우에만 true를 반환합니다.${TMUX}&&tmux -2tmux$PATH$TMUX

답변3

사용

which tmux && export TERM=xterm-256color && exec tmux

tmux존재 하는 경우 바이너리에 대한 경로 which tmux로 평가되므로 . 그렇지 않은 경우 빈 문자열로 평가되므로 .tmuxtruetmuxfalse

관련 정보