Presentation is loading. Please wait.

Presentation is loading. Please wait.

Basic.  Powershell scripts are flat text files that end with “.ps1” (e.g. myscript.ps1)  Similar to other scripting languages, whatever you can do on.

Similar presentations


Presentation on theme: "Basic.  Powershell scripts are flat text files that end with “.ps1” (e.g. myscript.ps1)  Similar to other scripting languages, whatever you can do on."— Presentation transcript:

1 Basic

2  Powershell scripts are flat text files that end with “.ps1” (e.g. myscript.ps1)  Similar to other scripting languages, whatever you can do on a command line, you can place in the script.

3  Unlike cmd.exe, the current folder is not automatically searched – it must be in your path or explicitly noted on the command line (eg.\myscript )  If you double click on a Powershell script from Windows Explorer it will open up the script in notepad.exe by default.  You must explicitly set the execution policy…

4  Restricted – Only interactive commands will run at the console.  AllSigned – Scripts must have a certificate issued by a trusted party.  RemoteSigned – Scripts downloaded require a 3 rd party certificate. Local scripts will run without a certificate.  Unrestricted - All scripts run without restriction.

5  To set the privilege you must have administrator privileges.

6  In your working folder enter the following command:

7 param([int]$height, [decimal]$shoesize, [int]$weight) "Height: " + $height "Shoe: " + $shoesize "Weight: " + $weight if (($height * $shoesize) -gt $weight) { Write-Host "You are either tall or you have big feet." } else { #try to be politically correct here Write-Host "You have the perfect weight." }

8 param([int]$height, [decimal]$shoesize, [int]$weight) "Height: " + $height "Shoe: " + $shoesize "Weight: " + $weight if (($height * $shoesize) -gt $weight) { Write-Host "You are either tall or you have big feet." } else { #try to be politically correct here Write-Host "You have the perfect weight." } Named parameter With strong typing Concatenation and Conversion Comment

9 #PSCount-Lines #Demonstration code begin { $lineCount = 0 } process { $lineCount++ } end { Write-Host "There are " $lineCount " lines." }

10 begin { $lineCount = 0 if ($args[0] -eq "-Double"){ $multiplier = 2 } else { $multiplier = 1 } } process { $lineCount++ } end { Write-Host "There are " ` ($multiplier * $lineCount) " lines." }

11  If…. elseif… else…  Switch…… default  ForEach ( Foreach-Object )  For  While  Do….. While  Do…..Until  Break & Continue

12 OperatorDescription -eqEquals -neNot equal -gtGreater than -geGreater than or equal -ltLess than -leLess than or equal -containsThe collection contains the value -notcontainsThe collection does not contain a value

13 OperatorDescription -notNOT ! -andAND -orOR

14 $processes = get-process if ($processes.Length -gt 50) { write-host "Processes are high: " + $processes.Length } $pnames = &{foreach ( $i in $processes ) {$i.Name}} if ($pnames -contains "notepad") { Write-host "Notepad is running." }

15 -like To be like as -notlike To not be like as -match Match -notmatch Not match -contains Include -notcontains Not include

16 Switch [-regex|-wildcard|-exact][-casesensitive] -file ( ) { { code 1 } { code 2 } { code 3 } … Default { code n } }

17 CommandsFunctions Format -Custom -List -Table -Wide Convert objects into formatting records Out -File -Host -Printer -String Convert formatting records into output-specific directives. Export/Import -CliXML -CSV Converts objects into and out of file formats ConvertTo -HTML Converts object into other objects

18 function listLastEvent { param ([int] $lastLimit) Get-EventLog -Newest $lastLimit Security Get-EventLog -Newest $lastLimit System Get-EventLog -Newest $lastLimit Application } listLastEvent 3 | ` Select Username, Source, TimeGenerated, Message | ` ConvertTo-Html > /temp/myreport.html Invoke-Item /temp/myreport.html

19  Functions can return values  $LastExitCode will capture the exit value of the last executable from the command line  $? – Similar to Unix but it holds either $true or $false to indicate success of the last call  $error – A collection of all the error messages so far ($error[0] is the most recent)

20 param ($filename = "/temp/nemo") dir $filename 2>$null if ($?) { Write-Host "That worked."} else {(Write-Host "Could not find: " $filename) }


Download ppt "Basic.  Powershell scripts are flat text files that end with “.ps1” (e.g. myscript.ps1)  Similar to other scripting languages, whatever you can do on."

Similar presentations


Ads by Google