I'm thinking to learn Powershell. Can somebody tell me what Powershel is good at and what's its limitation before I start?
Thanks a lot!
I'm thinking to learn Powershell. Can somebody tell me what Powershel is good at and what's its limitation before I start?
Thanks a lot!
Powershell is essentially a administration and automation utility for managing Windows. You have access to the full .NET framework for convenience as well as a modern scripting language (which can be seen as a replacement for CMD). You also have unified access to the file system, registry, WMI, certificate store, .NET or COM objects, etc.
Jeffrey Snover once wrote a quite long answer which highlights some ideas why Powershell was created and which problems it was meant to solve.
A limitation would certainly be its speed, at least for some tasks. I am using Powershell at times for solving numeric problems and for some of them it is definitely not the right domain. Then again, it can be argued that it never was from the start. Powershell wasn't designed for raw execution speed but for most automation scripts it shouldn't matter and I certainly only triggered some edge cases.
So if you need a modern command-line environment for Windows that enables easy access to pretty much anything you could need on Windows then Powershell is for you. The object-based pipeline needs a while to get accustomed to but in my opinion it is much more powerful than the UNIX concept of just byte streams so a Cygwin bash wouldn't replace Powershell for me.