我怎样才能让 tmux 使用我的默认 shell?

我怎样才能让 tmux 使用我的默认 shell?

在新设置中,tmux 使用 bash 而不是我的默认设置(zsh)。

我怎样才能强制它使用 zsh?

答案1

set-option -g default-shell /bin/zsh

~/.tmux.conf/etc/tmux.conf。适用于 Fedora。

<leader>: source-file <conf file>您可以使用例如重新加载配置

<C-b>: source-file ~/.tmux.conf

你需要为每个 tmux 实例执行此操作。否则,你可以使用以下命令重新启动 tmuxkillall tmux; tmux

答案2

zsh首先,通过在命令行中运行以下命令确保默认 shell 已正确设置:

chsh -s $(`which zsh`) $USER

将以下内容放入您的〜/ .tmux.conf对于任何 shell 来说都是更强大的选择。

set-option -g default-shell $SHELL

答案3

对于 MacOS 用户,请将此行放在~/.tmux.conf

set-option -g default-command "reattach-to-user-namespace -l zsh"

添加后,终止并重新启动 tmux 服务器,一切就可以正常工作了。

答案4

如果您想强制 tmux 使用与环境变量中指定的相同 shell,您可以使用:

# force SHELL ENV variable as shell
set-option -g default-shell ${SHELL}

在您的~/.tmux.conf/etc/tmux.conf

为了使更改真正生效,您可能需要tmux kill-server重新tmux启动 tmux。

相关内容