67% found this document useful (3 votes)
4K views

PowerShell 7 Cheat Sheet

The document provides a cheat sheet for PowerShell with sections on finding commands and help, useful commands, loops and branches, working with objects, built-in variables, common parameters, keyboard shortcuts, operators, strings, modules and packages, advanced functions, and parameter attributes.

Uploaded by

Jason Milczek
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
67% found this document useful (3 votes)
4K views

PowerShell 7 Cheat Sheet

The document provides a cheat sheet for PowerShell with sections on finding commands and help, useful commands, loops and branches, working with objects, built-in variables, common parameters, keyboard shortcuts, operators, strings, modules and packages, advanced functions, and parameter attributes.

Uploaded by

Jason Milczek
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

PowerShell 7 Cheat Sheet

FINDING CMDLETS AND HELP USEFUL CMDLETS LOOPS & BRANCHES


Get-Command List available commands. Use -Module, -Noun, How To… Commands Loop/Branch How To Use
-Verb. Wildcards help too Zip Files Compress-Archive, Expand-Archive If/Then/Else If ($true) { <this> } else { <that> }
Get-Member List properties and methods of an object Date/Time Get-Date, Set-Date, Get-TimeZone, Set-TimeZone For For ($a=0; $a -lt 10; $a++) { <this> }
Get-Help Help for a command. Use -Online to get latest Event Logs Get-WinEvent, New-WinEvent Do…While Do { <this> } While ($evaluation)
Performance Get-Counter, Export-Counter, Import-Counter Do…Until Do { <this> } Until ($evaluation)
Clipboard Get-Clipboard, Set-Clipboard While While ($evaluation) { <this> }
WORKING WITH OBJECTS Reboot Restart-Computer Foreach Foreach ($a in $b) { <this $a> }
Send Output Out-Printer, Out-Null, Out-File Switch Switch ($a) {
Common pattern: Get | Filter/Group/Sort | Modify/Delete/Output/Convert User Input Read-Host “one” { <this happens if $a is “one”> }
Where-Object Filters objects based on value of property Use Jobs Start-Job, Stop-Job, Get-Job, Receive-Job, Remove-Job Default { <this $a is none of above>}
Select-Object Choose properties of an object to include in Wait Start-Sleep }
pipeline Map Drives Get-PSDrive, New-PSDrive, Remove-PSDrive
Group-Object Group based on property values Navigate Get-Location, Set-Location, Test-Path
Sort-Object Sort results by property values File/Folders New-Item, Get-Item, Get-ChildItem, ARRAYS
Foreach-Object Act on each object in pipeline Get-Content, Set-Content
-Parallel Act on each object in pipeline at the same time Move-Item, Rename-Item, Copy-Item, Remove-Item How To… Commands
Measure-Object Measure property values or number of objects Display in Out-Gridview (with -OutputMode and -Passthru) to Create Array $a = @()
GUI form select one or more items and return to shell Single Item Array $a = @(“one”)
Item Reference $a[index] (0 is first)
BUILT-IN VARIABLES Range Reference $a[0..4] (Returns first 5)
COMMON PARAMETERS Last Item Reference $a[-1]
$Args Arguments passed into script.
$error Array of errors. $Error[0] is latest. -WHATIF Don’t make the changes, but output what would
$host Details on application running PS -CONFIRM Prompt before making changes
-VERBOSE Display verbose output MODULES AND PACKAGES
$IsLinux Returns TRUE on Linux OS
$isMacos Returns TRUE on Mac OS -DEBUG Display debug-level output
-ERRORACTION Override $ErrorActionPreference variable Find-Module Search PSGallery for PowerShell modules
$IsWindows Returns TRUE on Windows OS Find-Package Search PSGallery, nuget.org for software
$Profile Path to PowerShell profiles -OUTVARIABLE Redirect output to a variable
-? Display help for the cmdlet Get-Module Find modules/packages installed on system
$PSBoundParameterValues List parameters and current values. Get-Package Software installed by package management
$PSCommandPath Full path of script being run Other Verbs Install, Uninstall, Update
$PSItem / $_ Current object in the pipeline Register-PackageSource Allow package sources for installation
$PSScriptRoot Directory the script is run from KEYBOARD SHORTCUTS Install-PackageProvider Allow additional package providers (Gist) or
$PSVersionTable Details on PowerShell version specific versions
Esc Clear line
Tab Complete partially entered cmdlet/parameter
CTRL+C Stop processing current command
OPERATORS Up/Down Arrow Navigate command history ADVANCED FUNCTION
CTRL+S/CTRL+R Search forward/reverse through history
Pipeline |, ?? (If error), && (If success) PARAMETER ATTRIBUTES
CTRL+ALT+? Show all keybindings
Arithmetic +, -, *, /, %
Mandatory Will prompt if missing
Assignment =, +=, -=, *=, /=, %= Position Allows params in order instead
Null Coalescing ?? STRINGS of by name
Comparison -eq, -ne, -gt, -lt, -le, -ge ValueFromPipeline Allows pipeline input to
How To… Commands/Examples parameter
Wildcard Compare -like, -notlike Grep / Search Text Select-String ValueFromPipelineByPropertyName Pipeline accepted if property
Regex Compare -match, -notmatch, -replace Split into array “one,two,three” -split “,” name matches
Join “one”, “two”, “three” -join “, and a “ HelpMessage Sets param help msg
Contain Comparison -in, -notin, -contains, -notcontains
Replace “http://mysite.com” -replace “http:”,”https:” ValidateSet(“Choice1”,”Choice2”) Gives choice, allows tab-
Logical -and, -or, -xor, -not, ! complete
# Decimal Places “Pi is {0:N2}” -f [Math]::Pi
Type -is, -isnot, -as Format Currency “The price is {0:C}” -f 1.23 ValidateScript({ evaluation script }) Processes an evaluation script
Ternary (statement) ? (if true) : (if false) Format All Caps $a = “I’m yelling”; $a.ToUpper() ValidateRange([1..10]) Enforces param values in range
Format All Lower $a = “TOO LOUD”; $a.ToLower()
Insert Characters $a = “abcghij”; $a.Insert(3,"def")

©2020 iLovePowerShell.com

You might also like