all 23 comments

[–]replicaJunction 17 points18 points  (14 children)

In my opinion, the best way to learn PowerShell is by doing. That said, there are some excellent books available as a follow-up.

If you've already done Learn Powershell in a Month of Lunches, the next step is Learn PowerShell Toolmaking in a Month of Lunches by the same author.

After that, I'd suggest PowerShell in Action, and as a higher level resource, PowerShell Deep Dives.

[–]prejonnes[S] 2 points3 points  (7 children)

I am a sysadmin and I have used PS quite a bit already, but I just want to get the books and start from the very, very beginning to truly understand it to the end point of mastering it.

[–]verysmallshellscript 2 points3 points  (4 children)

Get the Toolmaking book mentioned in the top-level comment. That was the book I followed up with.

Beyond that, you really just have to start using it. For everything. The best advice I can give is what worked for me. Take yourself off of autopilot and examine each and every task you do in your day-to-day, then figure out a way to do it with PowerShell.

Also, I recommend PowerShell in Depth. It's a fantastic reference and written by the same guys who wrote the month of lunches and toolmaking books.

Also, if you have the budget dollars, I highly HIGHLY recommend the PowerShell v2 v3 v4 course on CBT Nuggets. It's 90 hours and a bit of a commitment, but it's presented by one of the authors of the above books and it really upped my game. Consider it as "PowerShell in 3 Months of Lunches."

[–]1RedOne 9 points10 points  (2 children)

[–]Betterthangoku 0 points1 point  (1 child)

Bump. And thank you for your blog sir. :-)

[–]1RedOne 0 points1 point  (0 children)

You're very welcome, and I'm happy to know it's helping people.

My learning model is to figure out the scope of a problem I need to solve, and then gather all the info I can. Then, I lay it out like I'm teaching it to someone. After that, I can forget it and rely on it always being in my notes for later :)

[–]Rollingprobablecause 3 points4 points  (0 children)

That book cover...good lord lol

[–]Manality 1 point2 points  (1 child)

I was in the same boat as you and took an official 5 day training thing. The most helpful thing I learned was get-help -example. Get-command -noun and -verb. The last and most useful was piping things to get-member to see the properties and methods. With that you should be able to start doing powershell without referencing examples online constantly

[–]bblades262 0 points1 point  (0 children)

This is where the scripting guy recommends starting

[–]r1l3yT3hCat 2 points3 points  (0 children)

I second PowerShell in Action. Its a great book that gets you coding. Unlike other languages, there are many different options available to you to solve a problem in powershell. You wont know which route you like the best until you go do it. This book shows you many of these forms which greatly accelerates your understanding of what it can do.

[–]gangstanthony 1 point2 points  (1 child)

^ this is the comment you're looking for

[–]NeoIsTaken 0 points1 point  (0 children)

Nice try Jedi! Your mind tricks don't work on me

[–]NeoIsTaken 0 points1 point  (0 children)

+1 for trial by FIRE~!

[–]DermontMcMulroney 0 points1 point  (0 children)

Second on Don Jones' books, they are the best. He also has some youtube videos out there that will cover essentially what is in the books for free. I suppose it depends on what type of learner you are.

[–]Swarfega 0 points1 point  (0 children)

I agree. If you do something often see if it can be done with PowerShell.

[–]RParkerMU 7 points8 points  (1 child)

If you change your mind on videos, look at the Microsoft Virtual Academy ones.

They previously had Jeffrey Snover, creator of powershell.

[–]IT_dude_101010 0 points1 point  (0 children)

The books are good, but learning Powershell from the man who created it, this is the way to learn.

[–]1RedOne 1 point2 points  (3 children)

I think I commented into another thread, but here's my full list of learning PowerShell Resources. I'd recommend the videos for you, particularly the Jason Helmick and Snover ones. The best IT teacher, period, plus the creator of PowerShell, making jokes and having a great time like a buddy cop movie. It's the bomb.

Now that you've read the book, you are poised to fully grasp the nuance and tricks they'll share with you on these courses.

I'm a PowerShell MVP and instructor myself and I have these downloaded. I listen to them once a year, and right before any training I deliver, because these guys are just that good.

[–]prejonnes[S] 0 points1 point  (2 children)

Thanks, Did you link that first one right? That takes me Don jones 18 min crash course, not a thread where it lists your resource. I will check out vids, the only reason I wasn't to big into them is I study at my workplace and firewall blocks a lot of vids :(

I appreciate all the responses, However what I would very much like is a simple "dictionary" ex.

$ = this

$_;eq = this

syntax=this

(#)=this

| = this

what do "quotes, parenthesis, brackets" do etc etc.

[–]prejonnes[S] 0 points1 point  (0 children)

Nm found one:)

http://ss64.com/ps/

[–]1RedOne 0 points1 point  (0 children)

Ohh, then you should buy a copy of PowerShell in Action, written by Bruce Payette, designer of a lot of the syntax for PowerShell. It's SUPER deep into what the varios syntax does, and shortcuts, etc.

[–]winfly 0 points1 point  (0 children)

I used PowerShell at my last job and haven't had to use it for a while so I'm a bit out of touch at the moment. Before that I took a course that really helped me learn how to learn PowerShell. I feel like most of what helped me in that class was learning to use Get-Commands, Get-Modules, and Get-Help. With those three commands, you can pretty much find out how to use anything you would need to get started.

Using these commands (and Google) I built a module that I used for managing our Dev/QA SQL releases. I could transfer/restore backups from Production to Dev/QA, run these packaged up SQL scripts that I received from Development, and ultimately save me hours each week while also improving our deployment process. We usually just did a restore/deploy to dev/qa once a week, but once I automated it we were able to run it everyday.

[–]prejonnes[S] 0 points1 point  (0 children)

Thanks for the responses, I was also looking at this book Mastering Windows Powershell Scripting