J'essaie de changer mon shell par défaut de bash en zsh dans cygwin.
- La commande Unix normale
chsh
n'est pas disponible sur cygwin - Il semble que le fichier etc / passwd ne soit plus utilisé dans les versions existantes de cygwin.
Alors, comment changer le shell par défaut?
sh.exe
àzsh.exe
dans Conemu Paramètres> Démarrage> Tâches> bash Cygwin Bash>set CHERE_INVOKING=1 & %ConEmuDrive%\CygWin\bin\sh.exe --login -i
CygWin\bin\zsh.exe
.sh.exe --login
va lancer Bash, comment changez-vous cela? Ou cela n'a-t-il pas d'importance de toute façon? J'imagine qu'ilsh.exe --login
s'exécute inutilementsh
avantzsh
...set CHERE_INVOKING=1 & %ConEmuDrive%\CygWin\bin\zsh.exe --login -i
hthsh.exe
. Maintenant, je me rends compte que je n'ai tout simplement pas lu votre message correctement :-)-l
:mintty.exe -i /Cygwin-Terminal.ico /usr/bin/zsh -l -
Si vous exécutez
mintty.exe
directement ou exécutez Cygwin Terminal à partir du menu Démarrer ou du bureau (qui est un raccourci vers mintty.exe), vous pouvez définir la variable d'environnement SHELL dans Windows sur/usr/bin/zsh
.Sous Windows 7:
Le reste devrait être explicite.
la source
Copié de ma réponse sur Stack Overflow :
Au lieu de créer un fichier passwd, ce que Cygwin recommande contre 1 , vous pouvez éditer /etc/nsswitch.conf . Ajoutez ou modifiez la ligne suivante:
L'inconvénient de cette méthode est que si vous avez plusieurs utilisateurs, cette modification les affecte tous. Le côté positif / positif est que c'est très simple. Le seul hic, c'est que vous devez redémarrer Cygwin.
Si vous faites usage mkpasswd après ce changement, il utilisera votre nouveau shell par défaut pour tous les utilisateurs qui sont autorisés à se connecter.
1 La documentation de mkpasswd dit ceci:
Je ne trouve pas vraiment de raisonnement solide dans le guide de l' utilisateur , à part une mention selon laquelle vous devrez régénérer les fichiers / etc / passwd et / etc / group si vos utilisateurs et groupes changent, ce qui, je suppose, est assez décent raison. Je peux dire que le processus est quelque peu sujet aux erreurs pour les débutants.
la source
Ceci est un hack: mettez-le comme première ligne de votre
~/.bash_profile
:la source