Getting Started With PowerShell Scripting
Upcoming SlideShare
Loading in...5
×
 

Getting Started With PowerShell Scripting

on

  • 5,649 views

This slide was used at @PSBUG or PowerShell Bangalore User Group UG meet. This shows some fundamentals about getting started with PowerShell scripting

This slide was used at @PSBUG or PowerShell Bangalore User Group UG meet. This shows some fundamentals about getting started with PowerShell scripting

Statistics

Views

Total Views
5,649
Views on SlideShare
5,336
Embed Views
313

Actions

Likes
1
Downloads
264
Comments
0

5 Embeds 313

http://www.ravichaganti.com 151
http://iktfag.wordpress.com 150
http://www.slideshare.net 7
http://ravichaganti.com 4
http://www.youporn.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Getting Started With PowerShell Scripting Getting Started With PowerShell Scripting Presentation Transcript

  • Getting started with PowerShell Scripting
    Ravikanth C
  • A lead engineer at Dell
    SharePoint professional by day and PowerShell scripter at night
    Blog at http://www.ravichaganti.com/blog
    Developer of
    PSCodePlex
    PSRemoteFileExplorer
    Remote File Explorer PowerPack
    BITS File Transfer PowerPack
    Author of
    Free eBook - Layman’s guide to PowerShell 2.0 remoting (Coming soon)
    About me
  • What is PowerShell?
    Getting started
    Using PowerShell
    Getting Help
    Tools for the job
    Learning resources
    Q & A
    Agenda
    View slide
  • Remote file explorer -> 698 lines of PowerShell
    This is just one example..!
    Show me the Power first.!
    View slide
  • The best shell scripting environment for Windows
    A new scripting language
    Replacement for a weak Windows command-line
    Default management / automation platform for all Microsoft products going forward
    Object based
    Built on top of .NET type system
    Everything is an object
    What is PowerShell?
  • PowerShell is in version 2.0
    Default on Windows 7 and Windows Server 2008
    Part of Windows management framework download for Windows Server 2008, Vista, XP and Windows 2003
    http://support.microsoft.com/kb/968929
    Requires .NET 2.0 SP1 or later
    Getting started
  • Console history, Intellisense for cmdlets, variables and parameters
    Using PowerShell: Console
  • Using PowerShell: ISE
  • Using PowerShell: Cmdlets
    • Pronounced as command-let
    • A lightweight command
    • an instance of .NET framework classes
    • Use verb-noun pairs
    • Get-Verb to list all approved verbs
  • Not case-sensitive
    Default value is $null
    Cmdlets to manage variables
    Clear-Variable
    Get-Variable
    New-Variable
    Remove-Variable
    Set-Variable
    Using PowerShell: Variables
  • Types
    User created variables
    Automatic variables
    Created by PowerShell to maintain its state
    Cannot be modified
    Examples: $PSHome, $$, $^, $?, etc
    Preference variables
    Created by PowerShell to store user preferences
    Can be modified
    Examples: $MaximumHistoryCount, etc
    Using PowerShell: Variables
  • Alternate names for cmdlets
    Cmdlets to manage aliases
    Export-Alias
    Get-Alias
    Import-Alias
    New-Alias
    Set-Alias
    Cannot take parameters
    Workaround: put the statement in a script and alias to that
    Example: Dir, ls, gcm, gci, etc
    Using PowerShell: Aliases
  • Conditional statements
    If
    Switch
    l.ooping
    For
    For ($i=0;$i –le 10;$i++) {Write-Host $i}
    Foreach
    Used on a collection of items
    Foreach ($name in $namesArray) { Write-Host $name }
    Do
    Do { Write-Host $i; $i++ } while ($i –le 10)
    Do { Write-Host $i;$i++} Until ($i –lt 10)
    While
    While ($i –le 10) { Write-Host $i;$i++ }
    Using PowerShell: Conditional & Looping
  • Comparison operators
    -ne, -eq, -lt, -gt, -ge, -le, -like, -notlike, -contains, -notcontains, -match, -notmatch
    Logical operators
    -or, -and, -xor, -not, !
    Arithmetic operators
    Assignment operators
    Using PowerShell: Operators
  • Arrays
    Collection of objects of the same type
    $a = @( )
    $a = “PowerShell”,”VBScript”
    Hash Tables
    Collection of key value pairs
    $ hash = @{ }
    $a = {“Name”=“PowerShell”; “IsHot”=$true}
    Using PowerShell: Arrays & Hash Tables
  • Getting Help
    Get-Command
    Gets a list of all commands
    Get-Help
    Shows help for a given cmdlet
    Get-Member
    Gets members of an object
    Get-PSDrive
    Shows information stores in PowerShell
    About_Topics
    Get-Help about*
  • In PowerShell, there will be more than one way to do the same thing. For example
    [System.Diagnostics.Process]::GetProcesses()
    Get-Process
    Understand execution policies
    Use PowerShell profiles
    Best practices
  • PowerShell Console
    PowerShell ISE
    PowerGUI AdminConsole
    PowerGUI ScriptEditor
    PowerWF
    PowerShell Plus
    Tools for the job
  • Getting started guide
    PowerShell Learning center
    Free PowerShell eBook
    The scripting Guys blog
    PowerScripting Podcast
    @PSBUG on Twitter
    Learning resources