I am a DevOps Engineer on Windows Platform with a passion for Automation. In my zeal to make things easier, I taught myself PowerShell. The power I discovered was tremendous. I have written quite a few applications for my fellow System Admins and this blog is my next step of sharing it with the world.
Like it or not, if you are in IT, Automation is inevitable. Someone who can automate would always be the first choice of any serious company looking to hire. I have met a lot of Admins who are oblivious to this changing dynamic. I am not going to sell you on PowerShell because that is something you have to do for yourself.
Trust me on this, PowerShell is the easiest thing you will ever learn. And that is coming from somebody who has already tested the waters with Java, nodeJS, Perl, C++ and C#. It will only make your life easier. Almost everything you do in your job, you can automate. And the reason I recommend PowerShell is because it comes pre-installed in every Windows Server Class OperatingSystem post Windows Server 2008. This allows your script or application to run anywhere without having to prepare your target environment.
Almost all of the PowerShell Cmdlets have a
-Computername parameter which allows any query to be run against a remote computer. With the exception of a few, most cmdlets come with a
-Credential Parameter which allows the use of alternate credentials.
But fret not, and this is my favorite part, there will always be alternate methods to do something. The
WMI Classes expose a variety of properties and method which will open up a whole new dimension of possibilities. I am yet to run into a situation where this has not allowed me to use the
Applications like VMWare, Amazon Web Services, Azure Cloud Services… all have released PowerShell modules for admins to have better control on their product. With the release of PowerShell Core (Version 6), PowerShell has gone platform independent. Now with the ability to control Linux systems as well. The Active Directory Module is one of my favorite as my job extensively revolves around AD. But there are modules for almost everything including. And if not, you can create one and have it added to the repository.
I can’t even begin to scratch the surface of the abilities of PowerShell. I honestly do not believe there is anything else out there that can do what PowerShell does.