如何将 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 varsession_uuid和 bash 函数都remove_session没有继承到 TMUX 中。

我怎样才能获得这个功能? (我希望能够从任何 TMUX 窗格调用“remove_session”。)

资源化我的 bashrc 文件并不能真正解决问题,因为 session_id 是在第一个源上创建的,而不是 TMUX 运行后的源...

答案1

理论上它会这样做:

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

bash 函数是不是传递给 tmux,但是环境变量曾是,不知道为什么会这样。

相关内容