Using PowerShell for SharePoint 2013

418
-1

Published on

Presentation given to the SharePoint Ottawa User Group on May 29th 2014

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
418
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
14
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Using PowerShell for SharePoint 2013

  1. 1. Nik Charlebois • Software Engineer • 8 years experience with SharePoint • MCTS SharePoint 2013 & HTML5 • Full time public servant • .NET Developer • Chair of the SPOutaouais User Group • Blog: NikCharlebois.com • @NikCharlebois
  2. 2. Author « Beginning PowerShell for SharePoint 2013 »
  3. 3. • Bridge the gap between IT Pros & Developers; • Understand the internals mechanisms of PowerShell; • Demonstrate how to use PowerShell on-premises & in the cloud; • Give an overview of what the future has in store;
  4. 4. • Minimum level of exposure with PowerShell; • Minimum level of exposure with the SharePoint’s Object Model;
  5. 5. vNext
  6. 6. STSAdm.exe • Limited tool to manage SharePoint; • Possibility to create command line scripts using it; • Often very slow to execute • Considered to be an IT Pro solution • Exclusive adminsitrative solution for SharePoint 2003
  7. 7. Console Application (.exe) • Used the SharePoint Object Model to do administrative tasks; • Requires a compiled solution (Visual Studio); • Black box not allowing administrators to read its logic; • Considered to be a developer solution;
  8. 8. PowerShell • New in 2009 (SharePoint 2010 not released yet); • Allows for hybrid solutions between the two previous alternatives; • Still perceived as a developer’s solution; • Need to know the SharePoint Object Model;
  9. 9. SharePoint Management Shell • SharePoint 2010 introduces shortcut methods called cmdlets to manage SharePoint; • Ex: Get-SPWeb, Remove-SPSolution, etc. • Very performant option compared to the previous ones; • Considered to be a general public solution (IT); • Language’s appearance in all Microsoft products;
  10. 10. 2007 $site = New-Object Microsoft.SharePoint.SPSite("http://intranet") $web = $site.RootWeb 2010 $web = Get-SPWeb http://localhost
  11. 11. • Introduces about 100 new cmdlets (compared to 2010). • Most are related to the new search architecture; • Now the official tool to manage SharePoint; • Comes preinstalled since Windows Server 2008 R2; • Used to manage Office 365; • Integrated in most Microsoft products
  12. 12. • PowerShell is based on the .NET platform; • Allows you to interact with objects; • Ex: Get-SPWeb returns an SPWeb object with whom we can interact; • Allows us to use custom dynamic libraries (custom DLLs);
  13. 13. Demo #1 Reservation System
  14. 14. • PowerShell has access to all .NET libraries; • Possibility to use libraries handling the graphical interface elements and others;
  15. 15. Demo #2 Graphical Interfaces 18
  16. 16. • PowerShell allows us to interact with all SharePoint object types (just like the Object Model); • PowerShell offers predefined cmdlets for SharePoint all the way down to the web level; • Starting at the lists level, we go back to the 2007 way of doing it;
  17. 17.  http://localhost  http://localhost  http://localhost  
  18. 18. Demo #3 Obtain all lists in a web
  19. 19. • Microsoft made available the « SharePoint Online Management Shell » • Connects remotely to an Office 365 SharePoint Online instance; • Includes it own set of cmdlets;
  20. 20. • Office 365 offers a H-U-G-E 30 PowerShell cmdlets; • Offers and extremely limited set of possible operations; • We simply add an ‘o’ in the name of each object in the cmdlets; • Ex: Get-SPOSite, Set-SPOSite, etc.
  21. 21. Demo #4 Rename a site on Office 365 using PowerShell
  22. 22. • Since SharePoint 2010, there is a Client-Side Object Model (CSOM); • This model comes in 3 flavours: • JavaScript • .NET • Silverlight • Since PowerShell leverages the .NET framework… • Then 1 + 1 =…
  23. 23. • Requires you to load the following moldes in your PowerShell session: • Microsoft.SharePoint.Client • Microsoft.SharePoint.Client.Runtime
  24. 24. Demo #5 Create a SharePoint public web On Office 365 using Powershell 27
  25. 25. • Requires coding (Visual Studio); • Requires you to add references to the following modules: • System.Management • System.Management.Automation • Allows us to define custom verb-noun combinations; • Each cmdlet is its own class;
  26. 26. Demo #6 Create custom Powershell cmdlet 29
  27. 27. PowerShell Web Access • New functionnality with Windows Server 2012; • Allows us to work in a remote PowerShell session through the browser;
  28. 28. • New with PowerShell v4 (Windows Server 2012 R2); • Offers a mechanism to push constant configurations between different machines or servers; • Specifies via a script how a machine needs to be configured (roles, services, etc.).
  29. 29. • Extensions to existing cmdlets: • Get-SPList, Move-SPList, Clear-SPBlobCache, etc. • Free & frequently updated SPPoSh.Codeplex.com
  30. 30. • Youtube Channel with free PowerShell training videos;
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×