tmux session_id를 tmux에 소싱하는 방법

tmux session_id를 tmux에 소싱하는 방법

나는 이것을 가지고있다:

export session_uuid="$(uuidgen)"

remove_session() {
  tmux kill-session -t "$session_uuid"
}

export -f remove_session

trap remove_session TERM INT SIGINT SIGTERM

source 'scripts/shell.sh'

echo "TMUX session id: $session_uuid"
tmux new -d -s "$session_uuid"
tmux split-window -h -t "${session_uuid}.0"

그러나 문제는 env var session_uuid나 bash 함수가 remove_sessionTMUX에 상속되지 않는다는 것입니다.

이 기능을 어떻게 얻을 수 있나요? (나는 모든 TMUX 창에서 "remove_session"을 호출할 수 있기를 원합니다.)

bashrc 파일을 리소스화해도 문제가 실제로 해결되지 않습니다. TMUX가 실행된 후의 소스가 아닌 첫 번째 소스에서 session_id가 생성되기 때문입니다.

답변1

이론적으로는 다음과 같이 수행됩니다.

tmux new -d -s "$session_uuid"
tmux set-option -g update-environment "remove_session session_uuid"

배쉬 기능은아니요tmux에 전달되었지만 환경 변수예전에는, 왜 이런 일이 발생하는지 모르겠습니다.

관련 정보