J'essaie de changer le shell de connexion de Mac OS X de bash
à zsh
. Je vois que c'est possible dans Mac OS X Leopard , mais pour OS X Lion, je ne trouve pas de solution. J'espère vraiment qu'il est possible de changer le shell de connexion de bash à autre chose. Je ne sais pas trop où chercher.
90
if [ -x /usr/local/bin/zsh ] ; then exec /usr/local/bin/zsh fi
. Astuce, lors de la modification des scripts de démarrage du shell, assurez-vous de garder un shell en marche et d'en démarrer un nouveau dans une autre fenêtre - si vous le cassez, vous aurez toujours un endroit facile pour le réparer.Réponses:
Vous pouvez changer de shell utilisateur avec la commande suivante:
Remarque: pour le changer pour un shell non standard, assurez-vous que son chemin a été ajouté au
/etc/shells
fichier.la source
/usr/local/bin/zsh
. Malheureusement, chsh ne permet pas cela, en disantchsh: /usr/local/bin/zsh: non-standard shell
. La réponse de Daniel Beck est une solution appropriée dans ce cas./usr/local/bin/zsh
à/etc/shells
et il devrait résoudre ce problème.==> Caveats To use this build of Zsh as your login shell, add it to /etc/shells.
/etc/shells
appartient à root (le superutilisateur), qui ne peut y écrire que par écrit. Vous pouvez, par exemple, utilisersudo vi /etc/shells
à utilisersudo
( s uper u ser ne ) pour exécuter l'vi
éditeur pour modifier/etc/shells
. Je viens de tester sur mon système et de confirmer qu'il n'est PAS protégé par la protection de l'intégrité du système. Vous devriez donc pouvoir le modifier en tant que root sans passer par des étapes pour désactiver SIP.Curieusement, la même méthode que celle que vous avez utilisée dans votre question fonctionne toujours sous OS X Lion via Sierra (10.12). Seule différence: le volet des préférences s'appelle Utilisateurs et groupes et non Comptes .
la source
Ou:
la source
brew install zsh
.sudo dscl . change /users/$USER UserShell /bin/bash $(which zsh)
Si quelqu'un qui se pose la même question se pose sur macOS Sierra et que la commande suivante me permet de changer de shell sans problème:
la source