By default, Windows Terminal launches in PowerShell when starting a new instance or a new tab. This is fine if you’re primarily a PowerShell user, but for Ubuntu/Linux (WSL) users, it can put a damper on your workflow. In this short tutorial, I’ll show you how to change the default shell to Ubuntu in Windows Terminal with just a few clicks.

Changing the Default to Ubuntu in Windows Terminal

First, click on the downward triangle at the top of the window. This will bring up the dropdown menu.

windows terminal menu

Next, in the dropdown menu that shows up, click on Settings to bring up the Settings UI.

windows terminal dropdown

As indicated by the yellow arrow below, the current profile is set to Windows PowerShell. You’ll want to change that if you want Windows Terminal to launch in a different shell.

default profile

Since our goal is to change the default to Ubuntu, let’s go ahead and change the default profile to Ubuntu.

Note: If you don’t see Ubuntu as an option, check if WSL has been set up properly.

select ubuntu

Finally, click Save.

save button

The Result:

windows terminal ubuntu default

Changing the Default Shell in Older Versions of Windows Terminal

Earlier versions of Windows Terminal do not have a GUI for settings.

When you click on Settings in the dropdown menu, the settings JSON file pops up in a text editor (e.g. Notepad) instead.

And you’ll have to replace the GUID of the default profile manually. Anyway, here are the specific steps on how to do it.

First, look for the list of profiles in the JSON file. The list is identified by a key called “profiles.”

In the screenshot that follows, notice that defaultProfile’s value is the same as the guid of Windows PowerShell? That’s because PowerShell is currently the default profile. windows terminal json settings

Find out the guid for Ubuntu, which should be under “profiles.”

windows terminal ubuntu guid example

Copy the guid for your Ubuntu profile and paste it into defaultProfile.

windows terminal default profile guid

Finally, save and close the text editor.

The next time you launch a new tab or a new Windows Terminal instance, it will be a Ubuntu shell.

Other Notes

The JSON approach also works on newer Windows Terminal, but changing it via the GUI is just easier in my opinion.

WSL/Windows Terminal Guides

Default Shell | Remove Ubuntu Startup Message | Starting Ubuntu Directory