如何启动 tmux 会话来覆盖 .bash_profile 中设置的环境变量?

如何启动 tmux 会话来覆盖 .bash_profile 中设置的环境变量?

假设我在里面设置了一个环境变量.bash_profileexport ABC=from_bash_profile

$ echo $ABC
from_bash_profile

当我尝试tmux为该特定会话创建一个具有环境变量的新会话时:

$ tmux new -s exp -e ABC=inside_tmux -e DEF=inside_tmux

...这是我看到的:

$ echo $ABC
from_bash_profile

$ echo $DEF
inside_tmux

但是我想tmux引用调用命令时传递的变量tmux new

我怎样才能实现这个目标?

答案1

根据@Kamil Maciorowski 在评论中所说的内容,该命令本身似乎无法实现这一点tmux new

因此,我最终使用了这个解决方法:

tmux new -d -s xyz -n experiments -c ~/Experiments
tmux send-keys -t xyz:experiments 'export ABC=inside_tmux' Enter C-l

我发现其他一些 SO/SE 帖子很有用:

相关内容