How to change the default terminal emulator on Windows (cmd)?
Solution 1
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.
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.
Solution 2
In order to change the default shell to anything, you have to change the ComSpec
environmental variable.
On Windows 7, you Right click My Computer
→Properties
→Advanced 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
.
Aleksandrs Ulme
Updated on September 18, 2022Comments
-
Aleksandrs Ulme over 1 year
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.
-
ganesh over 11 yearss/terminal emulator/shell? (cmd.exe is not a terminal emulator, it is a shell.)
-
Aleksandrs Ulme over 11 yearsAs 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.
-
Maximus over 11 yearsHey, 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"
-
-
Aleksandrs Ulme over 11 yearsThank you, although I am looking for a more general solution! Also, thank you for your work on ConEmu, it's amazing!
-
Maximus over 11 years"General" solution is impossible in Windows.
-
Maximus over 11 yearsAnswer updated, new build arrives.
-
stardust about 11 yearsThis 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.
-
Kamil Budziewski almost 11 yearsEverything perfect, but there is a mistake in screenshot. There should be
explorer.exe|vcexpress.exe
instead ofexplorer.exe, vcexpress.exe
. Thanks for this tool, it's amazing ;) -
Jeremy Holt almost 10 yearsIs it possible to start up as Admin?
-
Maximus almost 10 years@JeremyHolt start what? Thought, you need to use "as admin" feature from where you try to start it. And I think, may be you need to ask another Q. with description of your use case.
-
SO User about 8 years@Maximus with the above option, I am able to get win+r ipconfig and .exe in win exp run in conemu. But is doesn't work when I run my console app from Visual Studio. What am I missing?
-
Maximus about 8 yearsHave you add your visual studio executable?
-
GONeale almost 8 yearsUnfortunately it doesn't work with console projects you wish to debug in Visual Studio, still loads regular cmd ;(
-
monstro over 7 yearsDidnt work. Win+R -> "ipconfig /all" - brings old cmd window that disappears right away
-
setec over 3 yearsThis answer is even better, because it doesn't imply dependence on 3rd party apps.
-
stib about 3 yearsThis 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.