Chapter 1. Before you begin
Windows PowerShell—well, we suppose just PowerShell will do these days, because it’s available on more than just Microsoft Windows—is an interesting product. It was originally created to solve the specific problem of automating Windows administrative tasks, but frankly a much simpler “batch file” language would have sufficed. PowerShell’s inventor, Jeffrey Snover, and its entire product team, had a much grander vision. They wanted something that could appeal to a broad, diverse audience. In their vision, administrators might start very simply, by running commands to quickly accomplish administrative tasks—that’s what our previous book, Learn Windows PowerShell in a Month of Lunches, focused on. They also imagined more complex tasks and processes being automated through scripts of varying complexity, which is what this book is all about. The PowerShell team also envisioned developers using PowerShell to create all-new units of functionality, which we’ll hint at throughout this book. Just as your microwave probably has buttons you’ve never pushed, PowerShell likely has functionality you may never touch, because it doesn’t apply to you. But with this book, you’re taking a step into PowerShell’s deepest functionality: scripting. Or, if you buy into our worldview, toolmaking.