How to change the default shell in Cygwin?












28















I am trying to change my default shell from bash to zsh in cygwin.




  1. The normal unix command chsh isn't available on cygwin

  2. The etc/passwd file it seems isn't used anymore in existing versions of cygwin.


So how else can the default shell be changed ?










share|improve this question



























    28















    I am trying to change my default shell from bash to zsh in cygwin.




    1. The normal unix command chsh isn't available on cygwin

    2. The etc/passwd file it seems isn't used anymore in existing versions of cygwin.


    So how else can the default shell be changed ?










    share|improve this question

























      28












      28








      28


      5






      I am trying to change my default shell from bash to zsh in cygwin.




      1. The normal unix command chsh isn't available on cygwin

      2. The etc/passwd file it seems isn't used anymore in existing versions of cygwin.


      So how else can the default shell be changed ?










      share|improve this question














      I am trying to change my default shell from bash to zsh in cygwin.




      1. The normal unix command chsh isn't available on cygwin

      2. The etc/passwd file it seems isn't used anymore in existing versions of cygwin.


      So how else can the default shell be changed ?







      bash shell cygwin zsh oh-my-zsh






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jul 14 '15 at 16:10









      gyaani_guygyaani_guy

      1




      1






















          4 Answers
          4






          active

          oldest

          votes


















          22














          The answer depends on how you start Cygwin.



          If you start Cygwin with Cygwin.bat, modify the last line of /Cygwin.bat (usually C:cygwin or C:cygwin64).



          If you start Cygwin with mintty, then add the shell as a parameter. mintty /usr/bin/zsh -






          share|improve this answer





















          • 2





            Thank you, I am using Conemu. Had to change the sh.exe to zsh.exe in Conemu Settings > startup > tasks > bash Cygwin Bash > set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinsh.exe --login -i

            – gyaani_guy
            Jul 14 '15 at 17:31











          • @gyaani_guy I am just using ConEmu to execute CygWinbinzsh.exe. sh.exe --login will launch Bash, how do you change that? Or does it not matter anyway? I imagine sh.exe --login is unnecessarily executing sh before zsh...

            – deed02392
            Oct 19 '16 at 10:10











          • @deed02392 I am not sure I understand.. but the exact command I am using is set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinzsh.exe --login -i hth

            – gyaani_guy
            Oct 19 '16 at 18:18











          • @gyaani_guy thanks, I was confused because in your first comment you seemed to imply that you start zsh with sh.exe. Now I realise I just didn't read your message correctly :-)

            – deed02392
            Oct 20 '16 at 9:45








          • 3





            The mintty example didn't quite work for me. It had issues until I made it a login shell by adding -l: mintty.exe -i /Cygwin-Terminal.ico /usr/bin/zsh -l -

            – Morgan May
            Nov 2 '16 at 3:32





















          16














          If you run mintty.exe directly or run Cygwin Terminal from the start menu or desktop (which is a shortcut to mintty.exe), you can set the SHELL environment variable in Windows to /usr/bin/zsh.



          On Windows 7:




          1. Press Windows key.

          2. Start typing "environment".

          3. When it appears, select "Edit environment variables for your account".


          The rest should be self-explanatory.






          share|improve this answer



















          • 4





            This seriously needs more up-votes. I've never seen this documented anywhere, and it's obviously the intended method.

            – Kevin Mills
            Feb 9 '17 at 1:04






          • 1





            For those who don't want to rely on search to find the appropriate panel, right-click the Start menu and select "System" to launch the System control panel. Then click "Advanced system settings" from the left-side column. On the "System Properties" window that pops up, click "Environment Variables..." to launch the environment variable editor.

            – David C.
            Apr 13 '17 at 19:40













          • Worked perfectly!

            – bkunzi01
            Jul 16 '17 at 21:56



















          15














          Copied from my answer on Stack Overflow:





          Instead of creating a passwd file, which Cygwin recommends against1, you could edit /etc/nsswitch.conf. Add or edit the following line:




          db_shell: /usr/bin/fish


          The down/up side of this method is that, if you have multiple users, this change affects all of them. The up/up side is that it's dead simple. The only catch is that you have to restart Cygwin.



          If you do use mkpasswd after this change, it will use your new default shell for all users that are allowed to log on.





          1 The mkpasswd documentation says this:




          Don't use this command to generate a local /etc/passwd file, unless you really need one. See the Cygwin User's Guide for more information.




          I can't really find any solid reasoning in the user's guide, other than a mention that you'll have to regenerate the /etc/passwd and /etc/group files if your users and groups change, which I suppose is a decent enough reason. I can say that the process is somewhat error prone for newbies.






          share|improve this answer

































            5














            This is a hack: put this as the first line of your ~/.bash_profile:



            exec zsh





            share|improve this answer























              Your Answer








              StackExchange.ready(function() {
              var channelOptions = {
              tags: "".split(" "),
              id: "3"
              };
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function() {
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled) {
              StackExchange.using("snippets", function() {
              createEditor();
              });
              }
              else {
              createEditor();
              }
              });

              function createEditor() {
              StackExchange.prepareEditor({
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: true,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: 10,
              bindNavPrevention: true,
              postfix: "",
              imageUploader: {
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              },
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              });


              }
              });














              draft saved

              draft discarded


















              StackExchange.ready(
              function () {
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f940529%2fhow-to-change-the-default-shell-in-cygwin%23new-answer', 'question_page');
              }
              );

              Post as a guest















              Required, but never shown

























              4 Answers
              4






              active

              oldest

              votes








              4 Answers
              4






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              22














              The answer depends on how you start Cygwin.



              If you start Cygwin with Cygwin.bat, modify the last line of /Cygwin.bat (usually C:cygwin or C:cygwin64).



              If you start Cygwin with mintty, then add the shell as a parameter. mintty /usr/bin/zsh -






              share|improve this answer





















              • 2





                Thank you, I am using Conemu. Had to change the sh.exe to zsh.exe in Conemu Settings > startup > tasks > bash Cygwin Bash > set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinsh.exe --login -i

                – gyaani_guy
                Jul 14 '15 at 17:31











              • @gyaani_guy I am just using ConEmu to execute CygWinbinzsh.exe. sh.exe --login will launch Bash, how do you change that? Or does it not matter anyway? I imagine sh.exe --login is unnecessarily executing sh before zsh...

                – deed02392
                Oct 19 '16 at 10:10











              • @deed02392 I am not sure I understand.. but the exact command I am using is set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinzsh.exe --login -i hth

                – gyaani_guy
                Oct 19 '16 at 18:18











              • @gyaani_guy thanks, I was confused because in your first comment you seemed to imply that you start zsh with sh.exe. Now I realise I just didn't read your message correctly :-)

                – deed02392
                Oct 20 '16 at 9:45








              • 3





                The mintty example didn't quite work for me. It had issues until I made it a login shell by adding -l: mintty.exe -i /Cygwin-Terminal.ico /usr/bin/zsh -l -

                – Morgan May
                Nov 2 '16 at 3:32


















              22














              The answer depends on how you start Cygwin.



              If you start Cygwin with Cygwin.bat, modify the last line of /Cygwin.bat (usually C:cygwin or C:cygwin64).



              If you start Cygwin with mintty, then add the shell as a parameter. mintty /usr/bin/zsh -






              share|improve this answer





















              • 2





                Thank you, I am using Conemu. Had to change the sh.exe to zsh.exe in Conemu Settings > startup > tasks > bash Cygwin Bash > set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinsh.exe --login -i

                – gyaani_guy
                Jul 14 '15 at 17:31











              • @gyaani_guy I am just using ConEmu to execute CygWinbinzsh.exe. sh.exe --login will launch Bash, how do you change that? Or does it not matter anyway? I imagine sh.exe --login is unnecessarily executing sh before zsh...

                – deed02392
                Oct 19 '16 at 10:10











              • @deed02392 I am not sure I understand.. but the exact command I am using is set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinzsh.exe --login -i hth

                – gyaani_guy
                Oct 19 '16 at 18:18











              • @gyaani_guy thanks, I was confused because in your first comment you seemed to imply that you start zsh with sh.exe. Now I realise I just didn't read your message correctly :-)

                – deed02392
                Oct 20 '16 at 9:45








              • 3





                The mintty example didn't quite work for me. It had issues until I made it a login shell by adding -l: mintty.exe -i /Cygwin-Terminal.ico /usr/bin/zsh -l -

                – Morgan May
                Nov 2 '16 at 3:32
















              22












              22








              22







              The answer depends on how you start Cygwin.



              If you start Cygwin with Cygwin.bat, modify the last line of /Cygwin.bat (usually C:cygwin or C:cygwin64).



              If you start Cygwin with mintty, then add the shell as a parameter. mintty /usr/bin/zsh -






              share|improve this answer















              The answer depends on how you start Cygwin.



              If you start Cygwin with Cygwin.bat, modify the last line of /Cygwin.bat (usually C:cygwin or C:cygwin64).



              If you start Cygwin with mintty, then add the shell as a parameter. mintty /usr/bin/zsh -







              share|improve this answer














              share|improve this answer



              share|improve this answer








              edited May 17 '17 at 18:28

























              answered Jul 14 '15 at 17:07









              StevenSteven

              23.4k1076109




              23.4k1076109








              • 2





                Thank you, I am using Conemu. Had to change the sh.exe to zsh.exe in Conemu Settings > startup > tasks > bash Cygwin Bash > set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinsh.exe --login -i

                – gyaani_guy
                Jul 14 '15 at 17:31











              • @gyaani_guy I am just using ConEmu to execute CygWinbinzsh.exe. sh.exe --login will launch Bash, how do you change that? Or does it not matter anyway? I imagine sh.exe --login is unnecessarily executing sh before zsh...

                – deed02392
                Oct 19 '16 at 10:10











              • @deed02392 I am not sure I understand.. but the exact command I am using is set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinzsh.exe --login -i hth

                – gyaani_guy
                Oct 19 '16 at 18:18











              • @gyaani_guy thanks, I was confused because in your first comment you seemed to imply that you start zsh with sh.exe. Now I realise I just didn't read your message correctly :-)

                – deed02392
                Oct 20 '16 at 9:45








              • 3





                The mintty example didn't quite work for me. It had issues until I made it a login shell by adding -l: mintty.exe -i /Cygwin-Terminal.ico /usr/bin/zsh -l -

                – Morgan May
                Nov 2 '16 at 3:32
















              • 2





                Thank you, I am using Conemu. Had to change the sh.exe to zsh.exe in Conemu Settings > startup > tasks > bash Cygwin Bash > set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinsh.exe --login -i

                – gyaani_guy
                Jul 14 '15 at 17:31











              • @gyaani_guy I am just using ConEmu to execute CygWinbinzsh.exe. sh.exe --login will launch Bash, how do you change that? Or does it not matter anyway? I imagine sh.exe --login is unnecessarily executing sh before zsh...

                – deed02392
                Oct 19 '16 at 10:10











              • @deed02392 I am not sure I understand.. but the exact command I am using is set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinzsh.exe --login -i hth

                – gyaani_guy
                Oct 19 '16 at 18:18











              • @gyaani_guy thanks, I was confused because in your first comment you seemed to imply that you start zsh with sh.exe. Now I realise I just didn't read your message correctly :-)

                – deed02392
                Oct 20 '16 at 9:45








              • 3





                The mintty example didn't quite work for me. It had issues until I made it a login shell by adding -l: mintty.exe -i /Cygwin-Terminal.ico /usr/bin/zsh -l -

                – Morgan May
                Nov 2 '16 at 3:32










              2




              2





              Thank you, I am using Conemu. Had to change the sh.exe to zsh.exe in Conemu Settings > startup > tasks > bash Cygwin Bash > set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinsh.exe --login -i

              – gyaani_guy
              Jul 14 '15 at 17:31





              Thank you, I am using Conemu. Had to change the sh.exe to zsh.exe in Conemu Settings > startup > tasks > bash Cygwin Bash > set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinsh.exe --login -i

              – gyaani_guy
              Jul 14 '15 at 17:31













              @gyaani_guy I am just using ConEmu to execute CygWinbinzsh.exe. sh.exe --login will launch Bash, how do you change that? Or does it not matter anyway? I imagine sh.exe --login is unnecessarily executing sh before zsh...

              – deed02392
              Oct 19 '16 at 10:10





              @gyaani_guy I am just using ConEmu to execute CygWinbinzsh.exe. sh.exe --login will launch Bash, how do you change that? Or does it not matter anyway? I imagine sh.exe --login is unnecessarily executing sh before zsh...

              – deed02392
              Oct 19 '16 at 10:10













              @deed02392 I am not sure I understand.. but the exact command I am using is set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinzsh.exe --login -i hth

              – gyaani_guy
              Oct 19 '16 at 18:18





              @deed02392 I am not sure I understand.. but the exact command I am using is set CHERE_INVOKING=1 & %ConEmuDrive%CygWinbinzsh.exe --login -i hth

              – gyaani_guy
              Oct 19 '16 at 18:18













              @gyaani_guy thanks, I was confused because in your first comment you seemed to imply that you start zsh with sh.exe. Now I realise I just didn't read your message correctly :-)

              – deed02392
              Oct 20 '16 at 9:45







              @gyaani_guy thanks, I was confused because in your first comment you seemed to imply that you start zsh with sh.exe. Now I realise I just didn't read your message correctly :-)

              – deed02392
              Oct 20 '16 at 9:45






              3




              3





              The mintty example didn't quite work for me. It had issues until I made it a login shell by adding -l: mintty.exe -i /Cygwin-Terminal.ico /usr/bin/zsh -l -

              – Morgan May
              Nov 2 '16 at 3:32







              The mintty example didn't quite work for me. It had issues until I made it a login shell by adding -l: mintty.exe -i /Cygwin-Terminal.ico /usr/bin/zsh -l -

              – Morgan May
              Nov 2 '16 at 3:32















              16














              If you run mintty.exe directly or run Cygwin Terminal from the start menu or desktop (which is a shortcut to mintty.exe), you can set the SHELL environment variable in Windows to /usr/bin/zsh.



              On Windows 7:




              1. Press Windows key.

              2. Start typing "environment".

              3. When it appears, select "Edit environment variables for your account".


              The rest should be self-explanatory.






              share|improve this answer



















              • 4





                This seriously needs more up-votes. I've never seen this documented anywhere, and it's obviously the intended method.

                – Kevin Mills
                Feb 9 '17 at 1:04






              • 1





                For those who don't want to rely on search to find the appropriate panel, right-click the Start menu and select "System" to launch the System control panel. Then click "Advanced system settings" from the left-side column. On the "System Properties" window that pops up, click "Environment Variables..." to launch the environment variable editor.

                – David C.
                Apr 13 '17 at 19:40













              • Worked perfectly!

                – bkunzi01
                Jul 16 '17 at 21:56
















              16














              If you run mintty.exe directly or run Cygwin Terminal from the start menu or desktop (which is a shortcut to mintty.exe), you can set the SHELL environment variable in Windows to /usr/bin/zsh.



              On Windows 7:




              1. Press Windows key.

              2. Start typing "environment".

              3. When it appears, select "Edit environment variables for your account".


              The rest should be self-explanatory.






              share|improve this answer



















              • 4





                This seriously needs more up-votes. I've never seen this documented anywhere, and it's obviously the intended method.

                – Kevin Mills
                Feb 9 '17 at 1:04






              • 1





                For those who don't want to rely on search to find the appropriate panel, right-click the Start menu and select "System" to launch the System control panel. Then click "Advanced system settings" from the left-side column. On the "System Properties" window that pops up, click "Environment Variables..." to launch the environment variable editor.

                – David C.
                Apr 13 '17 at 19:40













              • Worked perfectly!

                – bkunzi01
                Jul 16 '17 at 21:56














              16












              16








              16







              If you run mintty.exe directly or run Cygwin Terminal from the start menu or desktop (which is a shortcut to mintty.exe), you can set the SHELL environment variable in Windows to /usr/bin/zsh.



              On Windows 7:




              1. Press Windows key.

              2. Start typing "environment".

              3. When it appears, select "Edit environment variables for your account".


              The rest should be self-explanatory.






              share|improve this answer













              If you run mintty.exe directly or run Cygwin Terminal from the start menu or desktop (which is a shortcut to mintty.exe), you can set the SHELL environment variable in Windows to /usr/bin/zsh.



              On Windows 7:




              1. Press Windows key.

              2. Start typing "environment".

              3. When it appears, select "Edit environment variables for your account".


              The rest should be self-explanatory.







              share|improve this answer












              share|improve this answer



              share|improve this answer










              answered Oct 13 '16 at 20:51









              dc46and2dc46and2

              16815




              16815








              • 4





                This seriously needs more up-votes. I've never seen this documented anywhere, and it's obviously the intended method.

                – Kevin Mills
                Feb 9 '17 at 1:04






              • 1





                For those who don't want to rely on search to find the appropriate panel, right-click the Start menu and select "System" to launch the System control panel. Then click "Advanced system settings" from the left-side column. On the "System Properties" window that pops up, click "Environment Variables..." to launch the environment variable editor.

                – David C.
                Apr 13 '17 at 19:40













              • Worked perfectly!

                – bkunzi01
                Jul 16 '17 at 21:56














              • 4





                This seriously needs more up-votes. I've never seen this documented anywhere, and it's obviously the intended method.

                – Kevin Mills
                Feb 9 '17 at 1:04






              • 1





                For those who don't want to rely on search to find the appropriate panel, right-click the Start menu and select "System" to launch the System control panel. Then click "Advanced system settings" from the left-side column. On the "System Properties" window that pops up, click "Environment Variables..." to launch the environment variable editor.

                – David C.
                Apr 13 '17 at 19:40













              • Worked perfectly!

                – bkunzi01
                Jul 16 '17 at 21:56








              4




              4





              This seriously needs more up-votes. I've never seen this documented anywhere, and it's obviously the intended method.

              – Kevin Mills
              Feb 9 '17 at 1:04





              This seriously needs more up-votes. I've never seen this documented anywhere, and it's obviously the intended method.

              – Kevin Mills
              Feb 9 '17 at 1:04




              1




              1





              For those who don't want to rely on search to find the appropriate panel, right-click the Start menu and select "System" to launch the System control panel. Then click "Advanced system settings" from the left-side column. On the "System Properties" window that pops up, click "Environment Variables..." to launch the environment variable editor.

              – David C.
              Apr 13 '17 at 19:40







              For those who don't want to rely on search to find the appropriate panel, right-click the Start menu and select "System" to launch the System control panel. Then click "Advanced system settings" from the left-side column. On the "System Properties" window that pops up, click "Environment Variables..." to launch the environment variable editor.

              – David C.
              Apr 13 '17 at 19:40















              Worked perfectly!

              – bkunzi01
              Jul 16 '17 at 21:56





              Worked perfectly!

              – bkunzi01
              Jul 16 '17 at 21:56











              15














              Copied from my answer on Stack Overflow:





              Instead of creating a passwd file, which Cygwin recommends against1, you could edit /etc/nsswitch.conf. Add or edit the following line:




              db_shell: /usr/bin/fish


              The down/up side of this method is that, if you have multiple users, this change affects all of them. The up/up side is that it's dead simple. The only catch is that you have to restart Cygwin.



              If you do use mkpasswd after this change, it will use your new default shell for all users that are allowed to log on.





              1 The mkpasswd documentation says this:




              Don't use this command to generate a local /etc/passwd file, unless you really need one. See the Cygwin User's Guide for more information.




              I can't really find any solid reasoning in the user's guide, other than a mention that you'll have to regenerate the /etc/passwd and /etc/group files if your users and groups change, which I suppose is a decent enough reason. I can say that the process is somewhat error prone for newbies.






              share|improve this answer






























                15














                Copied from my answer on Stack Overflow:





                Instead of creating a passwd file, which Cygwin recommends against1, you could edit /etc/nsswitch.conf. Add or edit the following line:




                db_shell: /usr/bin/fish


                The down/up side of this method is that, if you have multiple users, this change affects all of them. The up/up side is that it's dead simple. The only catch is that you have to restart Cygwin.



                If you do use mkpasswd after this change, it will use your new default shell for all users that are allowed to log on.





                1 The mkpasswd documentation says this:




                Don't use this command to generate a local /etc/passwd file, unless you really need one. See the Cygwin User's Guide for more information.




                I can't really find any solid reasoning in the user's guide, other than a mention that you'll have to regenerate the /etc/passwd and /etc/group files if your users and groups change, which I suppose is a decent enough reason. I can say that the process is somewhat error prone for newbies.






                share|improve this answer




























                  15












                  15








                  15







                  Copied from my answer on Stack Overflow:





                  Instead of creating a passwd file, which Cygwin recommends against1, you could edit /etc/nsswitch.conf. Add or edit the following line:




                  db_shell: /usr/bin/fish


                  The down/up side of this method is that, if you have multiple users, this change affects all of them. The up/up side is that it's dead simple. The only catch is that you have to restart Cygwin.



                  If you do use mkpasswd after this change, it will use your new default shell for all users that are allowed to log on.





                  1 The mkpasswd documentation says this:




                  Don't use this command to generate a local /etc/passwd file, unless you really need one. See the Cygwin User's Guide for more information.




                  I can't really find any solid reasoning in the user's guide, other than a mention that you'll have to regenerate the /etc/passwd and /etc/group files if your users and groups change, which I suppose is a decent enough reason. I can say that the process is somewhat error prone for newbies.






                  share|improve this answer















                  Copied from my answer on Stack Overflow:





                  Instead of creating a passwd file, which Cygwin recommends against1, you could edit /etc/nsswitch.conf. Add or edit the following line:




                  db_shell: /usr/bin/fish


                  The down/up side of this method is that, if you have multiple users, this change affects all of them. The up/up side is that it's dead simple. The only catch is that you have to restart Cygwin.



                  If you do use mkpasswd after this change, it will use your new default shell for all users that are allowed to log on.





                  1 The mkpasswd documentation says this:




                  Don't use this command to generate a local /etc/passwd file, unless you really need one. See the Cygwin User's Guide for more information.




                  I can't really find any solid reasoning in the user's guide, other than a mention that you'll have to regenerate the /etc/passwd and /etc/group files if your users and groups change, which I suppose is a decent enough reason. I can say that the process is somewhat error prone for newbies.







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited May 23 '17 at 12:41









                  Community

                  1




                  1










                  answered Jun 14 '16 at 14:43









                  P DaddyP Daddy

                  346155




                  346155























                      5














                      This is a hack: put this as the first line of your ~/.bash_profile:



                      exec zsh





                      share|improve this answer




























                        5














                        This is a hack: put this as the first line of your ~/.bash_profile:



                        exec zsh





                        share|improve this answer


























                          5












                          5








                          5







                          This is a hack: put this as the first line of your ~/.bash_profile:



                          exec zsh





                          share|improve this answer













                          This is a hack: put this as the first line of your ~/.bash_profile:



                          exec zsh






                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered Jul 14 '15 at 16:15









                          glenn jackmanglenn jackman

                          15.9k22644




                          15.9k22644






























                              draft saved

                              draft discarded




















































                              Thanks for contributing an answer to Super User!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid



                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.


                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function () {
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f940529%2fhow-to-change-the-default-shell-in-cygwin%23new-answer', 'question_page');
                              }
                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown







                              Popular posts from this blog

                              How do I know what Microsoft account the skydrive app is syncing to?

                              Grease: Live!

                              When does type information flow backwards in C++?