SlideShare a Scribd company logo
1 of 33
A Journey down the rabbit hole
PowerShell for the Anxious ITPro:
Jason Himmelstein, SharePoint MVP
Office 365 Advisory Services Manager
@sharepointlhorn
http://www.sharepointlonghorn.com
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
Jason’s contact & vitals
• SharePoint Server MVP
• Office 365 Advisory Services Manager
• SharePoint Community Leadership Board, Chair
• Blog: www.sharepointlonghorn.com
• Twitter: @sharepointlhorn
• LinkedIn: www.linkedin.com/in/jasonhimmelstein
• SlideShare: http://www.slideshare.net/jasonhimmelstein
• Email: jase@sharepointlonghorn.com
• Author of Developing Business Intelligence Apps for
SharePoint
– http://bit.ly/SharePointBI
If we are lucky, there *might* be a Big Seb sighting….
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Introduction
• What is it?
• History
• The Why
• Core principles
• Do's & Do not's
• Practical application
• Functional Explanation
• Wrap up
Agenda
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Do as I say not as I do
• Ask questions
• Be patient!
• Pray to the demo & Cloud gods
Rules for today 
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• It isn't:
– Fire and forget
– A packaged executable
– Developer-centric
– Too hard for an ITPro
• It is:
– Command line environment
– Microsoft technology holistic
– A swiss army knife with a chain saw
– The future of ITPro's world
What is it?
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Windows PowerShell is Microsoft's task automation framework, consisting of a command-
line shell and associated scripting language built on .NET Framework. PowerShell provides full
access to COM and WMI, enabling administrators to perform administrative tasks on both local
and remote Windows systems.
– Definition from Wikipedia
• What is it really
– PowerShell is an object-based, not text-based, command-line interface for Microsoft
Technologies
• What does that mean:
–Results in PowerShell can be acted upon, not just read from
What is it?
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Started internally at Microsoft in 2002
• Demo'ed at PDC in 2003 - early stage
• Private beta
• Public Beta in June 2005
• April 2006 changed the name to PowerShell
• PowerShell v1 for RTW on Nov 14 2006
• PowerShell v2 was released in Aug 2009 as a part of Win7 & Server 2008 R2
• PowerShell v3 was released as a part of Win8 & Server 2012
• PowerShell v4 is coming as a part of Server 2012 R2
History
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Why did Microsoft create PowerShell & move more to a PowerShell world than
a GUI world?
• What is it used for:
– Deployment
– Configuration
– Management
– Administration
– Development
The Why
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•The "hardware"
• PowerShell Console vs PowerShell ISE
•The terminology
• Shell
• Command-lets - "cmdlets"
• Variables
• Pipeline
• Scripts
• Functions
• Modules
The Basics
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Main building block of PowerShell
• Mini Commands that perform one action
• Actually .NET Classes that can easily be created if new functionality is required
• The output of one cmdlet can be piped into further cmdlets
• Equality test with expressions such as –eq –lt –match
cmdlets
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Script
– A script module is a file (.psm1) that contains any valid Windows PowerShell code.
• Binary
– A binary module is a .NET Framework assembly (.dll) that contains compiled code.
• Manifest
– A module manifest is a Windows PowerShell data file (.psd1) that describes the contents of a
module and determines how a module is processed.
• Dynamic
– A dynamic module is a module that does not persist to disk.
• created using New-Module, intended to be short-lived and cannot be accessed by Get-
Module
12
Modules
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•Instances of classes
•Have properties and methods
13
Objects
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•Properties and Methods of an object
– Properties – what an object is
– Methods – what you can do with the object
14
Members
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•Chain of object processing
•Output becomes input
15
PipeLine
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•Get-verb
– Gets approved Windows PowerShell verbs
•Get-member
– Listing the Properties and Methods of a Command or Object
•
•Get-history
– If you didn’t start transcript, you can still review your history before closing your Shell or ISE window
Functional Explanation
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•Use variables
•Only one thing at a time
•Comment your scripts
•Create scripts using an ISEIDE, execute in shell
•Dispose of your objects  code
•Test before using in Production
•Write re-usable scripts
The Do’s
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Vary your variables
• Hard code your scripts
• Take code from the internet or vendor & just RUN in your environment
• Assume that code is not harmful… it is.
• Run your code in an IDEISE and expect everything to work
The Do Not’s
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Comment
– #
• Add
– +
• Equal
– =
– -eq
• Not Equal
– !
– -ne
– -not
19
PowerShell Syntax
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•()
– Curved brackets (Parenthesis) are used for required options, compulsory arguments, or control structures
•{}
– Curly brackets are used for block expression within a command block
– Used to open a code block
•[]
– Square Brackets are used to denote optional elements or parameters
– Also used for math functions
20
Bracketology
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
Simple Hard Demos
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Why Run-As Administrator
• How to configure icon settings
22
Run-as Administrator
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Using PowerShell to add a server to a farm
• Writing your own scripts using functions
23
Add-Server2Farm
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
24
PowerShell vs PowerShell ISE
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• PowerShell vs PowerShell ISE
• Methods
– Start-transcript
– PowerShell Profiles
25
Transcription
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
Creation script
– New folders
– New files
• .ps1
• .bat
– Adds content to files
– Adds shortcut to the All Users Startup folder
26
PowerShell Profiles
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
Questions & Answers
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
• Jason’s info
– http://www.sharepointlonghorn.com
– jase@sharepointlonghorn.com
– @sharepointlhorn
• Seb Matthews
– http://sebmatthews.net
• Jason’s GitHub repo
– http://www.github.com/jasonhimmelstein
• The Scripting Guy
– http://blogs.technet.com/b/heyscriptingguy/
Handy information
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
Blog: www.sharepointlonghorn.com
Twitter: @sharepointlhorn
LinkedIn: www.linkedin.com/in/jasonhimmelstein
SlideShare: http://www.slideshare.net/jasonhimmelstein
Email: jase@sharepointlonghorn.com
me
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
Terms for you can Google with Bing later
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•members
•objects
•pipelines
•verb-noun
•dot sourcing
•parsing
Core Principles
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•Shell
•cmdlets*
•Blocks/regions
•Scripts
•Functions
•Modules*
•Profiles
Core principles (i)
Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File.
www.rackspace.com
•Objects*
•Members*
•Pipelines*
•Verb-Noun
•Dot sourcing
•Parsing
•Providers
Core principles (ii)

More Related Content

What's hot

Spca2014 keynote johnson
Spca2014 keynote johnsonSpca2014 keynote johnson
Spca2014 keynote johnson
NCCOMMS
 

What's hot (20)

Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
Part I: SharePoint 2013 Administration by Todd Klindt and Shane Young - SPTec...
 
Installing SharePoint 2013 – Step by Step presented by Alan Richards
Installing SharePoint 2013 – Step by Step presented by Alan RichardsInstalling SharePoint 2013 – Step by Step presented by Alan Richards
Installing SharePoint 2013 – Step by Step presented by Alan Richards
 
A Deep-Dive into Real-World SharePoint App Development
A Deep-Dive into Real-World SharePoint App DevelopmentA Deep-Dive into Real-World SharePoint App Development
A Deep-Dive into Real-World SharePoint App Development
 
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...
[Collinge] Office 365 Enterprise Network Connectivity Using Published Office ...
 
ECS19 - Marco Rocca and Fabio Franzini - Need a custom logic in PowerApps? Us...
ECS19 - Marco Rocca and Fabio Franzini - Need a custom logic in PowerApps? Us...ECS19 - Marco Rocca and Fabio Franzini - Need a custom logic in PowerApps? Us...
ECS19 - Marco Rocca and Fabio Franzini - Need a custom logic in PowerApps? Us...
 
ECS19 - Tomislav Lulic - What is changed in product/service licensing with Cl...
ECS19 - Tomislav Lulic - What is changed in product/service licensing with Cl...ECS19 - Tomislav Lulic - What is changed in product/service licensing with Cl...
ECS19 - Tomislav Lulic - What is changed in product/service licensing with Cl...
 
Spca2014 keynote johnson
Spca2014 keynote johnsonSpca2014 keynote johnson
Spca2014 keynote johnson
 
DEVELOPING SHAREPOINT FRAMEWORK SOLUTIONS FOR THE ENTERPRISE
DEVELOPING SHAREPOINT FRAMEWORK SOLUTIONS FOR THE ENTERPRISEDEVELOPING SHAREPOINT FRAMEWORK SOLUTIONS FOR THE ENTERPRISE
DEVELOPING SHAREPOINT FRAMEWORK SOLUTIONS FOR THE ENTERPRISE
 
Ecs19 - Hans Brender - Is OneDrive Really Enterprise Ready
Ecs19 - Hans Brender -  Is OneDrive Really Enterprise ReadyEcs19 - Hans Brender -  Is OneDrive Really Enterprise Ready
Ecs19 - Hans Brender - Is OneDrive Really Enterprise Ready
 
O365Con19 - Developing Timerjob and Eventhandler Equivalents - Adis Jugo
O365Con19 - Developing Timerjob and Eventhandler Equivalents - Adis JugoO365Con19 - Developing Timerjob and Eventhandler Equivalents - Adis Jugo
O365Con19 - Developing Timerjob and Eventhandler Equivalents - Adis Jugo
 
ECS19 - Robi Voncina - Upgrade to SharePoint 2019
ECS19 - Robi Voncina - Upgrade to SharePoint 2019ECS19 - Robi Voncina - Upgrade to SharePoint 2019
ECS19 - Robi Voncina - Upgrade to SharePoint 2019
 
ECS19 - Patrick Curran, Eric Shupps - SHAREPOINT 24X7X365: ARCHITECTING FOR H...
ECS19 - Patrick Curran, Eric Shupps - SHAREPOINT 24X7X365: ARCHITECTING FOR H...ECS19 - Patrick Curran, Eric Shupps - SHAREPOINT 24X7X365: ARCHITECTING FOR H...
ECS19 - Patrick Curran, Eric Shupps - SHAREPOINT 24X7X365: ARCHITECTING FOR H...
 
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012
SPCA2013 - Developing SharePoint 2013 Apps with Visual Studio 2012
 
ECS19 - Nik Charlebois - Automate the Deployment & Monitoring of SharePoint w...
ECS19 - Nik Charlebois - Automate the Deployment & Monitoring of SharePoint w...ECS19 - Nik Charlebois - Automate the Deployment & Monitoring of SharePoint w...
ECS19 - Nik Charlebois - Automate the Deployment & Monitoring of SharePoint w...
 
[Vončina] Configuring SharePoint 2016 for BI Scenarios
[Vončina] Configuring SharePoint 2016 for BI Scenarios[Vončina] Configuring SharePoint 2016 for BI Scenarios
[Vončina] Configuring SharePoint 2016 for BI Scenarios
 
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
 
I5 - Bring yourself up to speed with power shell
I5 -  Bring yourself up to speed with power shellI5 -  Bring yourself up to speed with power shell
I5 - Bring yourself up to speed with power shell
 
I2 - SharePoint Hybrid Search Start to Finish - Thomas Vochten
I2 - SharePoint Hybrid Search Start to Finish - Thomas VochtenI2 - SharePoint Hybrid Search Start to Finish - Thomas Vochten
I2 - SharePoint Hybrid Search Start to Finish - Thomas Vochten
 
[Struyf] Automate Your Tasks With Azure Functions
[Struyf] Automate Your Tasks With Azure Functions[Struyf] Automate Your Tasks With Azure Functions
[Struyf] Automate Your Tasks With Azure Functions
 
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint FilesECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
ECS19 - Mike Ammerlaan - Integrate with OneDrive and SharePoint Files
 

Similar to PowerShell for the Anxious ITPro

PowerShell for the Anxious ITPro
PowerShell for the Anxious ITProPowerShell for the Anxious ITPro
PowerShell for the Anxious ITPro
Jason Himmelstein
 
PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopers
Bryan Cafferky
 
My cool new Slideshow!
My cool new Slideshow!My cool new Slideshow!
My cool new Slideshow!
netzwelt12345
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
Ulrich Krause
 

Similar to PowerShell for the Anxious ITPro (20)

VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware En...
 
321 codeincontainer brewbox
321 codeincontainer brewbox321 codeincontainer brewbox
321 codeincontainer brewbox
 
Setting Up CircleCI Workflows for Your Salesforce Apps
Setting Up CircleCI Workflows for Your Salesforce AppsSetting Up CircleCI Workflows for Your Salesforce Apps
Setting Up CircleCI Workflows for Your Salesforce Apps
 
powershell.pdf
powershell.pdfpowershell.pdf
powershell.pdf
 
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
Dart Past Your Competition by Getting Your Digital Experience into Market Fas...
 
PowerShell for the Anxious ITPro
PowerShell for the Anxious ITProPowerShell for the Anxious ITPro
PowerShell for the Anxious ITPro
 
Best Practices Configuring And Developing Share Point Solutions
Best Practices Configuring And Developing Share Point SolutionsBest Practices Configuring And Developing Share Point Solutions
Best Practices Configuring And Developing Share Point Solutions
 
AIR - Framework ( Cairngorm and Parsley )
AIR - Framework ( Cairngorm and Parsley )AIR - Framework ( Cairngorm and Parsley )
AIR - Framework ( Cairngorm and Parsley )
 
PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopers
 
My cool new Slideshow!
My cool new Slideshow!My cool new Slideshow!
My cool new Slideshow!
 
PaaSing Your Code Around
PaaSing Your Code AroundPaaSing Your Code Around
PaaSing Your Code Around
 
UKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basicsUKLUG 2012 - XPages, Beyond the basics
UKLUG 2012 - XPages, Beyond the basics
 
SharePoint Saturday Vienna Slides
SharePoint Saturday Vienna Slides SharePoint Saturday Vienna Slides
SharePoint Saturday Vienna Slides
 
Integrating Splunk into your Spring Applications
Integrating Splunk into your Spring ApplicationsIntegrating Splunk into your Spring Applications
Integrating Splunk into your Spring Applications
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint Beast
 
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
 
Lecture11_LaravelGetStarted_SPring2023.pdf
Lecture11_LaravelGetStarted_SPring2023.pdfLecture11_LaravelGetStarted_SPring2023.pdf
Lecture11_LaravelGetStarted_SPring2023.pdf
 
APEX Application Lifecycle and Deployment 20220714.pdf
APEX Application Lifecycle and Deployment 20220714.pdfAPEX Application Lifecycle and Deployment 20220714.pdf
APEX Application Lifecycle and Deployment 20220714.pdf
 
Asp.Net 3 5 Part 1
Asp.Net 3 5 Part 1Asp.Net 3 5 Part 1
Asp.Net 3 5 Part 1
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
 

More from Jason Himmelstein

Heavy Metal PowerPivot Remastered
Heavy Metal PowerPivot RemasteredHeavy Metal PowerPivot Remastered
Heavy Metal PowerPivot Remastered
Jason Himmelstein
 

More from Jason Himmelstein (18)

SharePoint Migration in the real world: a cautionary tale of success
SharePoint Migration in the real world: a cautionary tale of successSharePoint Migration in the real world: a cautionary tale of success
SharePoint Migration in the real world: a cautionary tale of success
 
Dive into Microsoft SharePoint Server 2016 Upgrade and Migration
Dive into Microsoft SharePoint Server 2016 Upgrade and MigrationDive into Microsoft SharePoint Server 2016 Upgrade and Migration
Dive into Microsoft SharePoint Server 2016 Upgrade and Migration
 
The Power of BI: A guided tour of Microsoft's Business Intelligence tooling
The Power of BI: A guided tour of Microsoft's Business Intelligence toolingThe Power of BI: A guided tour of Microsoft's Business Intelligence tooling
The Power of BI: A guided tour of Microsoft's Business Intelligence tooling
 
Dive into Microsoft SharePoint Server 2016 Upgrade, Migration and beyond
Dive into Microsoft SharePoint Server 2016 Upgrade, Migration and beyondDive into Microsoft SharePoint Server 2016 Upgrade, Migration and beyond
Dive into Microsoft SharePoint Server 2016 Upgrade, Migration and beyond
 
Analytically shiny and new: A guided tour of Microsoft’s Business Intelligenc...
Analytically shiny and new: A guided tour of Microsoft’s Business Intelligenc...Analytically shiny and new: A guided tour of Microsoft’s Business Intelligenc...
Analytically shiny and new: A guided tour of Microsoft’s Business Intelligenc...
 
Making sense of Microsoft Identities in a Hybrid world
Making sense of Microsoft Identities in a Hybrid worldMaking sense of Microsoft Identities in a Hybrid world
Making sense of Microsoft Identities in a Hybrid world
 
Achieving Better Business Productivity through Apps for Office
Achieving Better Business Productivity through Apps for Office Achieving Better Business Productivity through Apps for Office
Achieving Better Business Productivity through Apps for Office
 
SharePoint 2013 Admin in the Hybrid World
SharePoint 2013 Admin in the Hybrid WorldSharePoint 2013 Admin in the Hybrid World
SharePoint 2013 Admin in the Hybrid World
 
SharePoint Performance - Best Practices from the Field
SharePoint Performance - Best Practices from the Field SharePoint Performance - Best Practices from the Field
SharePoint Performance - Best Practices from the Field
 
Business Intelligence in SharePoint 2013
Business Intelligence in SharePoint 2013Business Intelligence in SharePoint 2013
Business Intelligence in SharePoint 2013
 
Heavy Metal PowerPivot Remastered
Heavy Metal PowerPivot RemasteredHeavy Metal PowerPivot Remastered
Heavy Metal PowerPivot Remastered
 
ITPro's taking the SharePoint 2013 Red Pill
ITPro's taking the SharePoint 2013 Red PillITPro's taking the SharePoint 2013 Red Pill
ITPro's taking the SharePoint 2013 Red Pill
 
Battle-scarred but still standing: A SharePoint Admin’s Tell-All
Battle-scarred but still standing: A SharePoint Admin’s Tell-All Battle-scarred but still standing: A SharePoint Admin’s Tell-All
Battle-scarred but still standing: A SharePoint Admin’s Tell-All
 
New Office Web Apps story
New Office Web Apps storyNew Office Web Apps story
New Office Web Apps story
 
SharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the FieldSharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the Field
 
Heavy Metal PowerPivot
Heavy Metal PowerPivotHeavy Metal PowerPivot
Heavy Metal PowerPivot
 
Business intelligence in SharePoint 2013
Business intelligence in SharePoint 2013Business intelligence in SharePoint 2013
Business intelligence in SharePoint 2013
 
Battle Scarred But Still Standing: A SharePoint Administrator’s Tell All
Battle Scarred But Still Standing: A SharePoint Administrator’s Tell AllBattle Scarred But Still Standing: A SharePoint Administrator’s Tell All
Battle Scarred But Still Standing: A SharePoint Administrator’s Tell All
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

PowerShell for the Anxious ITPro

  • 1. A Journey down the rabbit hole PowerShell for the Anxious ITPro: Jason Himmelstein, SharePoint MVP Office 365 Advisory Services Manager @sharepointlhorn http://www.sharepointlonghorn.com
  • 2. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com Jason’s contact & vitals • SharePoint Server MVP • Office 365 Advisory Services Manager • SharePoint Community Leadership Board, Chair • Blog: www.sharepointlonghorn.com • Twitter: @sharepointlhorn • LinkedIn: www.linkedin.com/in/jasonhimmelstein • SlideShare: http://www.slideshare.net/jasonhimmelstein • Email: jase@sharepointlonghorn.com • Author of Developing Business Intelligence Apps for SharePoint – http://bit.ly/SharePointBI
  • 3. If we are lucky, there *might* be a Big Seb sighting….
  • 4. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Introduction • What is it? • History • The Why • Core principles • Do's & Do not's • Practical application • Functional Explanation • Wrap up Agenda
  • 5. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Do as I say not as I do • Ask questions • Be patient! • Pray to the demo & Cloud gods Rules for today 
  • 6. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • It isn't: – Fire and forget – A packaged executable – Developer-centric – Too hard for an ITPro • It is: – Command line environment – Microsoft technology holistic – A swiss army knife with a chain saw – The future of ITPro's world What is it?
  • 7. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Windows PowerShell is Microsoft's task automation framework, consisting of a command- line shell and associated scripting language built on .NET Framework. PowerShell provides full access to COM and WMI, enabling administrators to perform administrative tasks on both local and remote Windows systems. – Definition from Wikipedia • What is it really – PowerShell is an object-based, not text-based, command-line interface for Microsoft Technologies • What does that mean: –Results in PowerShell can be acted upon, not just read from What is it?
  • 8. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Started internally at Microsoft in 2002 • Demo'ed at PDC in 2003 - early stage • Private beta • Public Beta in June 2005 • April 2006 changed the name to PowerShell • PowerShell v1 for RTW on Nov 14 2006 • PowerShell v2 was released in Aug 2009 as a part of Win7 & Server 2008 R2 • PowerShell v3 was released as a part of Win8 & Server 2012 • PowerShell v4 is coming as a part of Server 2012 R2 History
  • 9. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Why did Microsoft create PowerShell & move more to a PowerShell world than a GUI world? • What is it used for: – Deployment – Configuration – Management – Administration – Development The Why
  • 10. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •The "hardware" • PowerShell Console vs PowerShell ISE •The terminology • Shell • Command-lets - "cmdlets" • Variables • Pipeline • Scripts • Functions • Modules The Basics
  • 11. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Main building block of PowerShell • Mini Commands that perform one action • Actually .NET Classes that can easily be created if new functionality is required • The output of one cmdlet can be piped into further cmdlets • Equality test with expressions such as –eq –lt –match cmdlets
  • 12. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Script – A script module is a file (.psm1) that contains any valid Windows PowerShell code. • Binary – A binary module is a .NET Framework assembly (.dll) that contains compiled code. • Manifest – A module manifest is a Windows PowerShell data file (.psd1) that describes the contents of a module and determines how a module is processed. • Dynamic – A dynamic module is a module that does not persist to disk. • created using New-Module, intended to be short-lived and cannot be accessed by Get- Module 12 Modules
  • 13. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •Instances of classes •Have properties and methods 13 Objects
  • 14. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •Properties and Methods of an object – Properties – what an object is – Methods – what you can do with the object 14 Members
  • 15. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •Chain of object processing •Output becomes input 15 PipeLine
  • 16. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •Get-verb – Gets approved Windows PowerShell verbs •Get-member – Listing the Properties and Methods of a Command or Object • •Get-history – If you didn’t start transcript, you can still review your history before closing your Shell or ISE window Functional Explanation
  • 17. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •Use variables •Only one thing at a time •Comment your scripts •Create scripts using an ISEIDE, execute in shell •Dispose of your objects code •Test before using in Production •Write re-usable scripts The Do’s
  • 18. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Vary your variables • Hard code your scripts • Take code from the internet or vendor & just RUN in your environment • Assume that code is not harmful… it is. • Run your code in an IDEISE and expect everything to work The Do Not’s
  • 19. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Comment – # • Add – + • Equal – = – -eq • Not Equal – ! – -ne – -not 19 PowerShell Syntax
  • 20. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •() – Curved brackets (Parenthesis) are used for required options, compulsory arguments, or control structures •{} – Curly brackets are used for block expression within a command block – Used to open a code block •[] – Square Brackets are used to denote optional elements or parameters – Also used for math functions 20 Bracketology
  • 21. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com Simple Hard Demos
  • 22. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Why Run-As Administrator • How to configure icon settings 22 Run-as Administrator
  • 23. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Using PowerShell to add a server to a farm • Writing your own scripts using functions 23 Add-Server2Farm
  • 24. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com 24 PowerShell vs PowerShell ISE
  • 25. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • PowerShell vs PowerShell ISE • Methods – Start-transcript – PowerShell Profiles 25 Transcription
  • 26. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com Creation script – New folders – New files • .ps1 • .bat – Adds content to files – Adds shortcut to the All Users Startup folder 26 PowerShell Profiles
  • 27. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com Questions & Answers
  • 28. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com • Jason’s info – http://www.sharepointlonghorn.com – jase@sharepointlonghorn.com – @sharepointlhorn • Seb Matthews – http://sebmatthews.net • Jason’s GitHub repo – http://www.github.com/jasonhimmelstein • The Scripting Guy – http://blogs.technet.com/b/heyscriptingguy/ Handy information
  • 29. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com Blog: www.sharepointlonghorn.com Twitter: @sharepointlhorn LinkedIn: www.linkedin.com/in/jasonhimmelstein SlideShare: http://www.slideshare.net/jasonhimmelstein Email: jase@sharepointlonghorn.com me
  • 30. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com Terms for you can Google with Bing later
  • 31. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •members •objects •pipelines •verb-noun •dot sourcing •parsing Core Principles
  • 32. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •Shell •cmdlets* •Blocks/regions •Scripts •Functions •Modules* •Profiles Core principles (i)
  • 33. Rackspace Company Confidential. Distribution is in violation of any Non-Disclosure Agreement on File. www.rackspace.com •Objects* •Members* •Pipelines* •Verb-Noun •Dot sourcing •Parsing •Providers Core principles (ii)

Editor's Notes

  1. There are some demo hacks that you really don’t want to do in the real world!
  2. Get-Verb | ?{$_.group -eq “data"} Get-Verb | ?{$_.group -eq “d"} Get-Verb | ?{$_.group -match "d"} Get-Verb | ?{$_.group -match "data"}
  3. A shell provides user interface to the kernel of an operating system