"Powershell Basic Cheat Sheet"

ADVERTISEMENT
ADVERTISEMENT

Download "Powershell Basic Cheat Sheet"

301 times
Rate (4.7 / 5) 6 votes
Variables
Importing, Exporting, Converting
Aliases for common commands
PowerShell Basic Cheat Sheet
$var = "string"
Assign variable
Export-CliXML
Import-CliXML
Gcm
Get-Command
$a,$b = 0 or $a,$b = 'a','b'
Assign multiple variables
ConvertTo-XML
ConvertTo-HTML
Foreach,%
Foreach-Object
PowerShell is a task based command line shell and scripting
$a,$b = $b,$a
Flip variables
Export-CSV
Import-CSV
Sort
Sort-Object
language. To run it, click Start, type PowerShell, run PowerShell ISE
or PowerShell as Administrator.
$var=[int]5
Strongly typed variable
ConvertTo-CSV
ConvertFrom-CSV
Where,?
Where-Object
Commands are written in verb-noun form, and named parameters
Diff,compare
Compare-Object
start with a dash.
Assignment, Logical, Comparison Operators
Flow Control
Dir, ls, gci
Get-ChildItem
Basics
=,+=,-=,++,--
Assign values to variable
If(){} Elseif(){ } Else{ }
Gi
Get-Item
Cmdlet
Commands built into shell written in .NET
-and,-or,-not,!
Connect expressions / statements
while(){}
Copy,cp,cpi
Copy-Item
Functions
Commands written in PowerShell language
-eq, -ne
Equal, not equal
For($i=0; $i -lt 10; $i++){}
Move,mv,mi
Move-Item
Parameter
Argument to a Cmdlet/Function/Script
-gt, -ge
Greater than, greater than or equal
Foreach($file in dir C:\){$file.name}
Del,rm
Remove-Item
Alias
Shortcut for a Cmdlet or Function
-lt, -le
Less than, less than or equal
1..10 | foreach{$_}
Rni,ren
Rename-Item
Scripts
Text files with .ps1 extension
-replace
“Hi” -replace “H”, “P”
Ft
Format-Table
Applications
Existing windows programs
Comments, Escape Characters
-match,-notmatch
Regular expression match
Fl
Format-List
Pipelines |
Pass objects Get-process word | Stop-Process
#Comment
Comment
-like,-notlike
Wildcard matching
Gcim
Get-CimInstance
Ctrl+c
Interrupt current command
<#comment#> Multiline Comment
-contains,-notcontains Check if value in array
Cat,gc,type
Get-Content
Left/right
Navigate editing cursor
"`"test`""
Escape char `
-in, -notin
Reverse of contains,notcontains.
Sc
Set-Content
Ctrl+left/right
Navigate a word at a time
`t
Tab
h,history,ghy
Get-History
Home / End
Move to start / end of line
Parameters
`n
New line
Ihy,r
Invoke-History
Up/down
Move up and down through history
-Confirm
Prompt whether to take action
`
Line continue
Gp
Get-ItemProperty
Insert
Toggles between insert/overwrite mode
-WhatIf
Displays what command would do
Sp
Set-ItemProperty
F7
Command history in a window
Cmdlets
Arrays, Objects
Pwd,gl
Get-Location
Tab / Shift-Tab
Command line completion
Get-EventLog
Get-WinEvent
$arr = "a", "b"
Array of strings
Gm
Get-Member
Help
Get-Date
$arr = @()
Empty array
Sls
Select-String
Get-Command
Get all commands
Start-Sleep
Compare-Object
$arr[5]
Sixth array element
Cd,chdir,sl
Set-Location
Get-Command -Module RGHS
Get all commands in RGHS module
Start-Job
Get-Credential
$arr[-3..-1]
Last three array elements
Cls,clear
Clear-Host
Get-Command Get-p*
Get all commands starting with get-p
Test-Connection New-PSSession
$arr[1,4+6..9]
Elements at index 1,4, 6-9
Cmdlets
Get-help get-process
Get help for command
Test-Path
Split-Path
$arr[1] += 200
Add to array item value
Set-Location
Get-Process | Get-Member
Get members of the object
Get-ADUser
Get-ADComputer
$z = $arA + $arB
Two arrays into single array
Get-Content
Get-Process| format-list -properties *
Get-Process as list with all properties
Get-History
New-ISESnippet
[pscustomobject]@{x=1;z=2} Create custom object
Add-Content
Get-WMIObject
Get-CimInstance
(Get-Date).Date
Date property of object
Set-Content
Writing output and reading input
Scripts
Out-File
"This displays a string"
String is written directly to output
Set-ExecutionPolicy -ExecutionPolicy Bypass
Set execution policy to allow all scripts
Out-String
Write-Host "color" -ForegroundColor Red -NoNewLine
String with colors, no new line at end
."\\c-is-ts-91\c$\scripts\script.ps1"
Run Script.PS1 script in current scope
Copy-Item
$age = Read-host "Please enter your age"
Set $age variable to input from user
&"\\c-is-ts-91\c$\scripts\script.ps1"
Run Script.PS1 script in script scope
Remove-Item
$pwd = Read-host "Please enter your password" -asSecureString
Read in $pwd as secure string
.\Script.ps1
Run Script.ps1 script in script scope
Move-Item
Clear-Host
Clear console
$profile
Your personal profile that runs at launch
Set-Item
Example command: dir C:\users\example -recurse -File | ?{$_.LastWriteTime -gt [datetime]::Today} | Select LastWriteTime,CreationTime,Length,FullName | sort LastWriteTime -descending | ft -AutoSize
New-Item
This gets all files under C:\users\example, filters by lastwritetime today, only returns lastwritetime, creationtime, length and fullname, sorts by lastwritetime and outputs results in an autosized table
Variables
Importing, Exporting, Converting
Aliases for common commands
PowerShell Basic Cheat Sheet
$var = "string"
Assign variable
Export-CliXML
Import-CliXML
Gcm
Get-Command
$a,$b = 0 or $a,$b = 'a','b'
Assign multiple variables
ConvertTo-XML
ConvertTo-HTML
Foreach,%
Foreach-Object
PowerShell is a task based command line shell and scripting
$a,$b = $b,$a
Flip variables
Export-CSV
Import-CSV
Sort
Sort-Object
language. To run it, click Start, type PowerShell, run PowerShell ISE
or PowerShell as Administrator.
$var=[int]5
Strongly typed variable
ConvertTo-CSV
ConvertFrom-CSV
Where,?
Where-Object
Commands are written in verb-noun form, and named parameters
Diff,compare
Compare-Object
start with a dash.
Assignment, Logical, Comparison Operators
Flow Control
Dir, ls, gci
Get-ChildItem
Basics
=,+=,-=,++,--
Assign values to variable
If(){} Elseif(){ } Else{ }
Gi
Get-Item
Cmdlet
Commands built into shell written in .NET
-and,-or,-not,!
Connect expressions / statements
while(){}
Copy,cp,cpi
Copy-Item
Functions
Commands written in PowerShell language
-eq, -ne
Equal, not equal
For($i=0; $i -lt 10; $i++){}
Move,mv,mi
Move-Item
Parameter
Argument to a Cmdlet/Function/Script
-gt, -ge
Greater than, greater than or equal
Foreach($file in dir C:\){$file.name}
Del,rm
Remove-Item
Alias
Shortcut for a Cmdlet or Function
-lt, -le
Less than, less than or equal
1..10 | foreach{$_}
Rni,ren
Rename-Item
Scripts
Text files with .ps1 extension
-replace
“Hi” -replace “H”, “P”
Ft
Format-Table
Applications
Existing windows programs
Comments, Escape Characters
-match,-notmatch
Regular expression match
Fl
Format-List
Pipelines |
Pass objects Get-process word | Stop-Process
#Comment
Comment
-like,-notlike
Wildcard matching
Gcim
Get-CimInstance
Ctrl+c
Interrupt current command
<#comment#> Multiline Comment
-contains,-notcontains Check if value in array
Cat,gc,type
Get-Content
Left/right
Navigate editing cursor
"`"test`""
Escape char `
-in, -notin
Reverse of contains,notcontains.
Sc
Set-Content
Ctrl+left/right
Navigate a word at a time
`t
Tab
h,history,ghy
Get-History
Home / End
Move to start / end of line
Parameters
`n
New line
Ihy,r
Invoke-History
Up/down
Move up and down through history
-Confirm
Prompt whether to take action
`
Line continue
Gp
Get-ItemProperty
Insert
Toggles between insert/overwrite mode
-WhatIf
Displays what command would do
Sp
Set-ItemProperty
F7
Command history in a window
Cmdlets
Arrays, Objects
Pwd,gl
Get-Location
Tab / Shift-Tab
Command line completion
Get-EventLog
Get-WinEvent
$arr = "a", "b"
Array of strings
Gm
Get-Member
Help
Get-Date
$arr = @()
Empty array
Sls
Select-String
Get-Command
Get all commands
Start-Sleep
Compare-Object
$arr[5]
Sixth array element
Cd,chdir,sl
Set-Location
Get-Command -Module RGHS
Get all commands in RGHS module
Start-Job
Get-Credential
$arr[-3..-1]
Last three array elements
Cls,clear
Clear-Host
Get-Command Get-p*
Get all commands starting with get-p
Test-Connection New-PSSession
$arr[1,4+6..9]
Elements at index 1,4, 6-9
Cmdlets
Get-help get-process
Get help for command
Test-Path
Split-Path
$arr[1] += 200
Add to array item value
Set-Location
Get-Process | Get-Member
Get members of the object
Get-ADUser
Get-ADComputer
$z = $arA + $arB
Two arrays into single array
Get-Content
Get-Process| format-list -properties *
Get-Process as list with all properties
Get-History
New-ISESnippet
[pscustomobject]@{x=1;z=2} Create custom object
Add-Content
Get-WMIObject
Get-CimInstance
(Get-Date).Date
Date property of object
Set-Content
Writing output and reading input
Scripts
Out-File
"This displays a string"
String is written directly to output
Set-ExecutionPolicy -ExecutionPolicy Bypass
Set execution policy to allow all scripts
Out-String
Write-Host "color" -ForegroundColor Red -NoNewLine
String with colors, no new line at end
."\\c-is-ts-91\c$\scripts\script.ps1"
Run Script.PS1 script in current scope
Copy-Item
$age = Read-host "Please enter your age"
Set $age variable to input from user
&"\\c-is-ts-91\c$\scripts\script.ps1"
Run Script.PS1 script in script scope
Remove-Item
$pwd = Read-host "Please enter your password" -asSecureString
Read in $pwd as secure string
.\Script.ps1
Run Script.ps1 script in script scope
Move-Item
Clear-Host
Clear console
$profile
Your personal profile that runs at launch
Set-Item
Example command: dir C:\users\example -recurse -File | ?{$_.LastWriteTime -gt [datetime]::Today} | Select LastWriteTime,CreationTime,Length,FullName | sort LastWriteTime -descending | ft -AutoSize
New-Item
This gets all files under C:\users\example, filters by lastwritetime today, only returns lastwritetime, creationtime, length and fullname, sorts by lastwritetime and outputs results in an autosized table