1、用途不同
PowerShell是跨平台的,cmd是Windows专用的。
2、功能不同
CMD只能执行基本的任务,本身并没有集成太多的功能,大多依赖于第三方的程序,比如PING命令,其实是一个单独的应用程序,而不是CMD本身的一条命令。
PowerShell因为是基于NET面向对象的,而且本身就内置了非常多的命令。使得它不管从功能上还是性能上都要比CMD要强大得多。可以这么说CMD能办的事,PowerShell基本都就能办,但PowerShell能办的事,CMD遥不可及。
3、脚本不同
CMD写的BAT脚本看作是面向过程的;而PowerShell则是面向对象的,是一种站在使用者的角度进行脚本的编写。