Is PowerShell a complete replacement for console/cmd?

Right now I'm using the Windows console (cmd.exe) for some easy tasks (as checking my ip configuration or running some applications). But now I heard that there is PowerShell which actually is way more powerful while also keeping the old commands sothat there is no re-learning necessary.

My questions:

  1. Does powershell support all commands as cmd.exe does?
  2. How do I quickly start PowerShell? (something like Windows-Key + R -> cmd)
  3. Is there any case where I would favor cmd over powershell?

  1. Yes, you can mostly use all the external commands that you would use in cmd much the same way in Powershell and Powershell has equivalents for cmd internal commands like dir. And of course Powershell comes with whole lot of cmdlets and the power of the .Net framework.

  2. If you are on Windows 7, pin it to your taskbar and use Win + Position to start. Or just press Winkey, type powershell ( mostly it is even shorter) in the start menu and hit enter. Win + R -> powershell would work as well.

  3. You might have to prefer cmd when running some batch / cmd files which may not run fine in Powershell ( but I would say, better write a powershell script to do the same.). Since I have started using powershell, I have never had the need to use cmd. And of course, you can always do cmd /c command from Powershell.


Also, in Windows 8, 8.1 and 10

  1. Right click the task bar and click properties,
  2. Go to the navigation tab,
  3. The third check box replaces the command prompt option from the right click menu with Powershell.

(Yes I know this is an old post, thought it might be useful)


A notable absent command is mklink, which is an internal command.

Other internal CMD commands have either aliases or CMDLETS.

For a replacement to mklink, I'd download the Powershell Community Extensions. It provides CMDLets to replace mklink.

Also look at the answer here.

https://stackoverflow.com/questions/894430/powershell-hard-and-soft-links.