Here are a bunch of resources for learning PowerShell and for using PowerShell with SharePoint and SharePoint Online.
First, for learning PowerShell, I recommend this books from Manning Press:
Additionally, there two book specifically on PowerShell for SharePoint 2013, and they are:
If you are still using SharePoint 2010, the books are:
Notice that the first of the two SP 2010 PowerShell books is co-written by none other than Gary LaPointe, who makes the PowerShell add on commands for SharePoint that you can find here: http://blog.falchionconsulting.com/.
In addition to the books, some great online resources are:
- The Windows PowerShell Blog
- The Microsoft TechNet Script Center
- My PowerShell Building Blocks for SharePoint, on CodePlex
- My Old Blog
- PowerShell MVP Jeff Hick’s Blog, his Mr. Roboto Columns, and his Professor PowerShell Columns.
- SharePoint MVP Todd Klindt’s PowerShell-related blog posts
- The PowerShell script repository at http://poshcode.org/
- The SharePoint+PowerShell script repository at http://get-spscripts.com/
- The SP PowerShell Help Group in SPYam on Yammer
- Jack Fruh, aka SharePoint Jack, and his PowerShell related blog posts
That should be plenty. Of course, Bing.com is always a good resource too…
Here’s another resource: Some PowerShell E-Books from PowerShell.org.
A few updates to the above:
PowerShell in action is now in its third edition.
Additionally, the Patterns and Practices PowerShell collection is found at https://github.com/SharePoint/PnP-PowerShell/
Furthermore, a good place to discuss PowerShell questions, especially for Office 365, is http://techcommunity.microsoft.com
And a few more:
List of PowerShell users groups; https://social.technet.microsoft.com/wiki/contents/articles/19959.powershell-user-groups.aspx
SharePoint Fest Chicago usually has a workshop on PowerShell.
You can frequently find sessions on PowerShell at SharePoint Saturdays (http://SPSEvents.org)
There were 24 sessions at Microsoft Ignite 2017 involving PowerShell: https://myignite.microsoft.com/videos?q=powershell