201 votes

Comment puis-je faire en sorte que tmux utilise mon Shell par défaut ?

Sur une nouvelle installation, tmux utilise bash au lieu de ma configuration par défaut (zsh).

Comment puis-je le forcer à utiliser zsh ?

272voto

Alex Hammel Points 2744
set-option -g default-shell /bin/zsh

sur ~/.tmux.conf o /etc/tmux.conf . Fonctionne sur Fedora.

Vous pouvez recharger la configuration avec <leader>: source-file <conf file> par exemple

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

Vous devrez le faire pour chaque instance de tmux. Sinon, vous pouvez redémarrer tmux avec killall tmux; tmux

51voto

user108116 Points 1

Tout d'abord, assurez-vous que votre Shell par défaut est correctement configuré pour zsh en exécutant ceci dans votre ligne de commande :

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

En plaçant les éléments suivants dans votre ~/.tmux.conf est une option plus robuste pour tout Shell.

set-option -g default-shell $SHELL

24voto

wyattdanger Points 351

Pour les utilisateurs de MacOS, déposez cette ligne en bas de votre fichier ~/.tmux.conf

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

Après avoir ajouté cela, arrêtez et redémarrez votre serveur tmux et tout devrait fonctionner.

9voto

blueyed Points 1171

Tmux semble utiliser le SHELL la variable d'environnement, donc ce qui suit devrait fonctionner :

SHELL=/usr/bin/zsh tmux

ou

env SHELL=/usr/bin/zsh tmux

7voto

Frazor Points 126

Si vous voulez forcer tmux à utiliser le même Shell que celui spécifié dans votre variable d'environnement, vous pouvez utiliser :

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

dans votre ~/.tmux.conf o /etc/tmux.conf .

Pour que le changement prenne effet, vous devrez peut-être tmux kill-server y luego tmux pour redémarrer tmux.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X