PowerShell just turned 15 years old (on November 14, 2021). It’s hard to believe it’s been around this long, but there is still a large number of IT folks who haven’t used it yet. We get it—there is only so much time in the day, and you are already familiar with doing things the way you always have. Or maybe your cybersecurity officer will not let you turn on PowerShell because it can only be used by the bad guys. Either way, we are glad you could join us on our adventure. We have been using PowerShell for a long time. In fact, two of us, James and Tyler, actually learned PowerShell from earlier editions of this very book.
There was a huge shift in the industry around 2009 when a new concept was realized about PowerShell. It isn’t a scripting language, nor is it a programming language, so the way we teach PowerShell needed to change as well. PowerShell is actually a command-line shell where you run command-line utilities. Like all good shells, it has scripting capabilities, but you don’t have to use them, and you certainly don’t have to start with them.
The previous editions of this book were the result of that culture shift, and we keep that same mindset here today. It’s the best that we’ve yet devised to teach PowerShell to someone who might not have a scripting background (although it certainly doesn’t hurt if you do). But before we jump into the instruction, let’s set the stage for you.