小智 259
set-option -g default-shell /bin/zsh
Run Code Online (Sandbox Code Playgroud)
在~/.tmux.conf
或/etc/tmux.conf
。在 Fedora 上工作。
您可以使用<leader>: source-file <conf file>
例如重新加载配置
<C-b>: source-file ~/.tmux.conf
您需要为每个 tmux 实例执行此操作。否则,您可以使用以下命令重新启动 tmuxkillall tmux; tmux
Deb*_*XYZ 48
首先,zsh
通过在命令行中运行以下命令,确保您的默认 shell 设置正确:
chsh -s $(`which zsh`) $USER
Run Code Online (Sandbox Code Playgroud)
将以下内容放在您的~/.tmux.conf中对于任何 shell来说都是一个更强大的选项。
set-option -g default-shell $SHELL
Run Code Online (Sandbox Code Playgroud)
小智 24
对于 MacOS 用户,将此行放在您的底部 ~/.tmux.conf
set-option -g default-command "reattach-to-user-namespace -l zsh"
Run Code Online (Sandbox Code Playgroud)
添加后,杀死并重新启动您的 tmux 服务器,一切都应该可以正常工作。
tmux 似乎使用SHELL
环境变量,所以以下应该工作:
SHELL=/usr/bin/zsh tmux
Run Code Online (Sandbox Code Playgroud)
或者
env SHELL=/usr/bin/zsh tmux
Run Code Online (Sandbox Code Playgroud)
如果要强制 tmux 使用与环境变量中指定的相同的 shell,可以使用:
# force SHELL ENV variable as shell
set-option -g default-shell ${SHELL}
Run Code Online (Sandbox Code Playgroud)
在您的~/.tmux.conf
或/etc/tmux.conf
.
为了让改变实际生效,你可能需要tmux kill-server
再tmux
重新启动TMUX。
小智 6
接受的答案对我不起作用。
\n我必须写两个
\nset -g default-shell "/bin/bash"\n
Run Code Online (Sandbox Code Playgroud)\n和
\nset -g default-command "/bin/bash"\n
Run Code Online (Sandbox Code Playgroud)\n在我的~/.tmux.conf
\xe2\x80\x94 中不要忘记运行以下命令来重新加载 tmux.conf:
tmux kill-server; tmux\n
Run Code Online (Sandbox Code Playgroud)\n我tmux -V
在 Ubuntu 18 下的 gnome-shell 模拟器中使用 2.6。
我还使用https://github.com/samoshkin/tmux-config增强了 tmux 。看看吧,真的很酷。
\n