Windows Server Core starts with cmd by default. Why? I don’t know. It’s annoying, because Windows Powershell is without a doubt the future of Windows system administration.
Well, if you’re running a Server Core (I hope so, for domain controllers, dns, file services and more there’s no good reason to do not so), then it’s an ease to change that. The corresponding setting has to be configured in the registry. Regedit can be opened on Server Core (there are more graphical user interfaces that are shipped with core, for example notepad.exe and timedate.cpl). I’m talking about this key:
Let’s change this setting to make Core start PowerShell after logging in.
Open Windows PowerShell (in cmd type powershell). Enter the following command and hit enter:
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\' -Name Shell -Value 'powershell.exe'
Next, restart your Server Core.
After login you should see a PowerShell prompt.
For further Core configuration see also my other articles about Core.