How to Set Command Prompt (CMD) as Default in Windows Terminal

CMD as Default Windows Terminal

Learn how to change the default shell in Windows Terminal

The Windows Terminal by Microsoft is a really versatile terminal. Aside from having lots of features such as tabs, rich text, theming and styling, it also has support for a number of shells such as CMD, PowerShell, Linux and many more.

The default shell that opens in a tab when you launch Windows Terminal is the ‘PowerShell’. But if you wish to change it to the ‘Command Prompt [CMD]’ shell, it’s pretty easy to do that.

First, launch Windows Terminal on your computer. Then, click on the down arrow in the terminal’s header, and select ‘Settings’ from the available options. Alternatively, you can use the Ctrl+, keyboard shortcut to quickly open Terminal settings.

Windows Terminal Settings

This will open the Windows Terminal configuration file (settings.json). We’ll be making changes to the defaultProfile value in settings.json and set it to the guid of the ‘Command Prompt’ shell instead of ‘PowerShell’.

In the settings.json file, you’ll find the defaultProfile setting on line 11 (probably). By default, it’ll be set to the PowerShell’s GUID {61c54bbd-c2c6-5271-96e7-009a87ff44bf}. We need to change it to CMD’s GUID.

Copy the cmd.exe GUID from code block below and replace the powershell.exe GUID value in defaultProfile with the GUID value of cmd.exe.


The final code in the settings.json file for the defaultProfile setting should look the code below.

"defaultProfile": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",

Save the settings.json file after making the above-mentioned changes, and close and relaunch Windows Terminal to see ‘Command Prompt’ open as default in a tab on Terminal.

If that doesn’t work for some reason, be sure to match the cmd.exe GUID value we provided above with the GUID value of the cmd.exe profile mentioned in the Terminal’s settings.json file on your computer.

Look for the ‘cmd.exe’ profile in list section in the profiles block in settings.json file and note the guid value mentioned there.

The cmd.exe GUID value in your terminal configuration file should match the value we used in the defaultProfile setting above. In case it doesn’t match, then use the GUID value you found for cmd.exe profile in your terminal configuration instead of the one we provided above.