Book Review: Windows PowerShell Cookbook 3rd Edition


Two months ago I started reading Lee Holmes’s new Windows PowerShell Cookbook (3rd Edition).

I read the epub version of the book using the iBooks App on my iPad which is my format, app, and device of choice for reading books. The epub version of the book is 1739 pages (the PDF version is 1036 pages). When I first started reading the book, my wife said “How could someone write a book with that many pages in it?” My response was: The guy who wrote this book is one of the guys who works on the PowerShell team at Microsoft and with all of that knowledge, he probably had a difficult time keeping the number of pages narrowed down to so few.

With that many pages, you might think that this is one of those books that’s goal was page count. If that’s what you think, you would be wrong, dead wrong. Based on my experience of reading this book, every page in this book is useful and there’s no “fluff” added to it just for the sake of page count.

I actually own the previous edition of this book also, but never read it cover to cover. I primarily used it as a reference book similar to how you would use a traditional Cookbook designed for cooking. I would use a recipe here and there as needed. I’ve gotten a lot of use out of the prompt function that I learned about in that previous (2nd) edition of the book and that function also exists in the new (3rd) edition of the book. As demonstrated in the following example, you’ll notice that any screenshots of the PowerShell console on my blog have a custom prompt which is branded to my blog:


As many times as I’ve used the prompt function and considering it’s in both books, I have to say that it’s my favorite recipe that exists in both books. It’s also easy enough to remember and simply type in as needed.

The prompt function brings up an issue, if it exists in both the 2nd and 3rd edition of the books and you already own the 2nd edition, is buying and reading the 3rd edition worth it? In a single word, Definitely! When you consider the 2nd edition is 884 pages versus the 3rd edition being 1036 pages (PDF’s). That’s over 17% more pages than the previous edition plus the other 83% is not copied directly over from the previous edition. The new edition covers PowerShell version 3 where the previous edition covered PowerShell version 2. If you asked the opposite question: I recently purchased the 3rd edition of the book, once I’ve finished reading it should I purchase the 2nd edition of the book and read it? My answer would be no because from what I’ve seen the most relevant information has been brought over from the 2nd edition and updated for PowerShell version 3 in the 3rd edition, however, like I previously said, I didn’t read the 2nd edition cover to cover either.

With the 3rd edition of the book, I decided to read the book cover to cover. If you’re brand new to PowerShell and have no prior experience with it, there are other books that I would recommend to you to read prior to reading this book. To me “Cookbook” is the perfect description for this book. It’s almost like a comprehensive reference for cooking with PowerShell. It includes all of the PowerShell basics, but also dives deep into the depths of PowerShell and explains how things actually work. If you’re like me and you not only enjoy accomplishing a task, but also want to know why something works the way it does, then this is the book for you. The only reason I would recommend other books to new comers is I would be afraid that some of these details that aren’t necessary for a beginner to know might confuse them and make them think that PowerShell is more complicated than it really is. With that said, this is the perfect book for someone with a little prior experience with PowerShell.

When’s the last time you read something in a PowerShell book about working with alternate data streams? Probably never, right? I never even knew they existed until I attended an ethical hacking and countermeasures course about five years ago. Well, this book has a Recipe on Using PowerShell to Interact with Alternate Data Streams (Cool Stuff).

When you reach the end of the book, your ready to celebrate since reading this book cover to cover is a major undertaking. Don’t celebrate yet though because the appendixes are another book in themselves. I rarely read the appendixes, but this book is an exception to that rule. The appendixes of this book include a great regular expression reference and an XPath quick reference.

One of the unique and awesome things about this book that as far as I’m aware of, no one else has done or is doing is to make all the recipes from it available in a searchable form on the Internet at This is available to anyone who has purchased the book. I actually had an issue with the website, tweeted the issue to Lee Holmes on Twitter and it was resolved soon afterwards.

This book is definitely worth it’s weight in gold when it comes to PowerShell and I’m sure the physical copy of the book weighs a lot! By keeping my attention through two months and 1739 pages (EPUB), the quality of the book and the writing ability of Lee Holmes speaks for itself.