我的 .bash_profile 中有一个脚本提示 X 会话启动。当我启动 tmux 时,我收到此提示,表明我仅用于 TTY 登录。
如果 .bash_profile 是 tmux 的一部分,我是否可以放入一些可以简单运行 bash 的内容?也就是说,我可以用 bash 检查 .bash_profile 是否在 tmux 中被读取?
答案1
tmux 设置一个名为 的环境变量$TMUX
,我相信它保存了它正在使用的套接字的位置。无论哪种方式,你都可以在你的程序中使用它.bash_profile
来测试它是否是从 tmux 中调用的。
if [ -z "$TMUX" ]; then
# not in tmux, do non-tmux things
fi
或者
if [ -n "$TMUX" ]; then
# called inside tmux session, do tmux things
fi
答案2
我通常用$TERM
它来测试。screen
并将tmux
其默认设置为“屏幕”。
答案3
TMUX
您可以export
自己代替。如果有多个tmux
用户并且您只想source
为自己使用,则此功能非常有用。
将以下行添加到~/.tmux.conf
.
if-shell shell-command export SOMEONE_USING_TMUX=1
并且,将以下行添加到~/.bash_profile
.
if [[ ! -z "$SOMEONE_USING_TMUX" ]]; then
# source for yourself
fi