Celeb Glow
general | March 09, 2026

Powershell vs Cmd

I am recently shifted from Ubuntu to Windows 10. There are two different terminals in Windows, Powershell and Command Prompt.What is the main difference between them?

3

2 Answers

CMD originates back from the Dos days. It has a simple command structure and is a per-line instruction language.

You issue commands, get feedback and its mostly useful to start programs. In order to do more complex stuff, you usually need to use a program that performs this function specifically.

cmd does come with a lot of commands, such as copy, move, but they still are meant to perform some basic tasks.

PowerShell is more advanced language that is an extended version of the command prompt. It was created to have a windows variant of what bash is for linux, using the .net framework. All commands are native to Powershell and it can interact with the output of any program to make it do even more.

What is the main difference between them?

cmd is a very easy language to learn, but it very limited in what it can do.

Powershell is a very complex language that is not easy to master unless you also know your way around other languages such as bash. But once you master it, it opens up a world of possibilities. Its strength is in piping commands together (redirect output from one command into the next, and redirecting that into the next etc) and being able to use the output, edit it into something more useful and then display or save that.

2

There aren't many commons between batch and powershell.

Batch exists since 30 years and the only major extensions were made by the change from MSDOS to windows.

Batch only supports simple commands and very basic string/math operations.
It's possible to build the most necessary functionality on your own, and that's fun for me.
But I wouldn't use it to build productive scripts, because it's really hard to build reliable, maintainable and bullet proof scripts (And I know what I'm talking about).

Powershell has a complete own syntax style, incompatible to any other shell.
It's based on .NET objects, the commands work on objects instead of text.
It's much more powerfull than batch, but PowerShell is like all new Microsoft future tools, a dead horse.
It will exist for a few years until Microsoft replaces it by the next future tool.

IMHO, not worth to learn the syntax.

Personally, I use git-bash or cygwin for windows. But most of the time I'm working with Linux systems, to be more productive.

8

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy