我正在尝试根据从父 shell(即 bash)继承的值来设置TERM我的 tmux 会话的环境变量。请注意,我的文件中有以下行,因此实际上会被继承:.tmux.confTERM.tmux.confTERM
set -g update-environment '...some variables... TERM'
Run Code Online (Sandbox Code Playgroud)
基本上,TERM在xterm-256color父 shell 中,我检测到并default-terminal使用以下命令设置选项:
if "[[ ${TERM} =~ 256color ]]" 'set -g default-terminal screen-256color'
Run Code Online (Sandbox Code Playgroud)
该行在我的工作 PC (RHEL 6.6) 上的 tmux 1.9a 中工作,并正确设置TERM为screen-256color,但在其他 PC 上(包括运行 tmux 1.8 的工作 Ubuntu PC 和运行 tmux 2.1 的家用 Ubuntu PC),“condition”命令始终似乎返回 false,因此TERM仍在screen新的 tmux 会话中。
我也尝试过这样做if 'true' 'set -g default-terminal screen-256color',但这也不起作用!(TERM仍在screen新的 …