67

Is it possible to change the default terminal emulator on Windows (7 and 8 in particular) from Console to, for example, Console2 or ConEmu? In essence, I want all command line tools, whether launched by double clicking, from "Run" or by other processes to use the custom terminal.

This is a trivial matter on Linux, is it even possible on Windows?

It would be especially helpful if this could be done via a script.

3
  • 6
    s/terminal emulator/shell? (cmd.exe is not a terminal emulator, it is a shell.)
    – Hennes
    Nov 23, 2012 at 14:06
  • As I understand it, both the the shell and the terminal emulator share the name. If it's not the case, I have no idea how the actual terminal emulator window is called. Nov 23, 2012 at 17:13
  • 2
    Hey, it is called "console" ;) Hennes is absolutely right, for example, when you Win+R "powershell" - it will be started in the same terminal as "cm.exe"
    – Maximus
    Nov 23, 2012 at 17:22

2 Answers 2

85

Default terminal

You may set up ConEmu as default terminal for cmd.exe, tcc.exe, powershell.exe or any other console application. In fact, you choose from what application you need to run any console application, even from Visual Studio for debugging your console applications.

ConEmu's Default Terminal set up

Just turn on checkbox, point applications from you like to start console tools (for example explorer.exe|totalcmd.exe|wdexpress.exe) and voila. You may press Win+R type ipconfig /all and press Enter. You may even start your console application in Visual Studio debugger. New console will starts attached to the new ConEmu tab. You may also doubleclick on some executable in the Explorer window.

You may find more information about the feature in the project wiki: DefaultTerminal.

Alternative

Also, there is an alternative less preferable way to auto run ConEmu on cmd.exe and tcc.exe startup. Just press "Register ConEmu autorun" in Settings -> ComSpec.

12
  • 6
    Thank you, although I am looking for a more general solution! Also, thank you for your work on ConEmu, it's amazing! Nov 23, 2012 at 17:13
  • 7
    "General" solution is impossible in Windows.
    – Maximus
    Nov 23, 2012 at 17:20
  • Though so, thank you! Too bad I can not mark the comment as the accepted answer. Nov 23, 2012 at 17:26
  • 5
    Answer updated, new build arrives.
    – Maximus
    Nov 25, 2012 at 2:02
  • 4
    This is an amazing program. I was all happy with Consol2. Till I found this. This takes the whole think to a whole new level. Thank you man. It makes me wonder how I never heard of it.
    – stardust
    May 7, 2013 at 16:29
4

In order to change the default shell to anything, you have to change the ComSpec environmental variable.

On Windows 7, you Right click My ComputerPropertiesAdvanced system settings (on the left pane). Go down to the bottom and select Environment Variables.... Change the ComSpec to whatever shell application you want.

The default value is %SystemRoot%\system32\cmd.exe.

For PowerShell it is %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe.

System properties window

Environment Variables window

2
  • This answer is even better, because it doesn't imply dependence on 3rd party apps.
    – setec
    Dec 9, 2020 at 8:09
  • 3
    This answer is about changing the shell. What program gets used to interact with the shell is a different matter. You can run cmd or powershell or git bash in any console program you like, eg. conEmu.
    – stib
    May 7, 2021 at 5:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .