105 commands · 6 cheat sheets · Windows
Compute, Apps, and Platforms master quick reference
Browse 105 commands from 6 focused cheat sheets on page 1 of 1. Each example opens its matching detailed section.
Compute, Apps, and Platforms · 16 commands
Hyper-V Virtual Machines PowerShell Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| List virtual machines | Get-VM | Sort-Object Name | View examples |
| Inspect one VM | Get-VM -Name 'App-Test-01' |
Format-List Name, VMId, State, Status, Generation, Version, Path | View examples |
| Inspect host defaults | Get-VMHost |
Format-List ComputerName, VirtualMachinePath, VirtualHardDiskPath, LogicalProcessorCount | View examples |
| Inspect VM memory | Get-VMMemory -VMName 'App-Test-01' | View examples |
| Inspect virtual processors | Get-VMProcessor -VMName 'App-Test-01' | View examples |
| Inspect network adapters | Get-VMNetworkAdapter -VMName 'App-Test-01' |
Select-Object Name, SwitchName, MacAddress, Status, IPAddresses | View examples |
| List virtual switches | Get-VMSwitch |
Select-Object Name, SwitchType, NetAdapterInterfaceDescription | View examples |
| Preview VM creation | New-VM -Name 'App-Test-01' -Generation 2 `
-MemoryStartupBytes 4GB -NoVHD -SwitchName `
'Lab-Switch' -WhatIf | View examples |
| Preview dynamic memory | Set-VMMemory -VMName 'App-Test-01' -DynamicMemoryEnabled `
$true -MinimumBytes 2GB -StartupBytes 4GB `
-MaximumBytes 8GB -WhatIf | View examples |
| Start a VM | Start-VM -Name 'App-Test-01' -WhatIf | View examples |
| Request guest shutdown | Stop-VM -Name 'App-Test-01' -Shutdown -WhatIf | View examples |
| List checkpoints | Get-VMCheckpoint -VMName 'App-Test-01' |
Sort-Object CreationTime | View examples |
| Create named checkpoint | Checkpoint-VM -Name 'App-Test-01' -SnapshotName `
'Before-App-Upgrade' -WhatIf | View examples |
| Preview checkpoint restore | Restore-VMCheckpoint -VMName 'App-Test-01' -Name `
'Before-App-Upgrade' -WhatIf | View examples |
| Preview VM export | Export-VM -Name 'App-Test-01' -Path 'E:/VMExports' `
-WhatIf | View examples |
| Inspect an import plan | Compare-VM -Path `
'E:/VMExports/App-Test-01/Virtual Machines/VM-ID.vmcx' `
-Copy -GenerateNewId | View examples |
Compute, Apps, and Platforms · 20 commands
IIS Administration with PowerShell Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Load IIS administration | Import-Module WebAdministration | View examples |
| List websites | Get-Website |
Select-Object Name, Id, State, PhysicalPath, Bindings | View examples |
| List site applications | Get-WebApplication -Site 'CmdMemo' | View examples |
| List site bindings | Get-WebBinding -Name 'CmdMemo' |
Select-Object protocol, bindingInformation, sslFlags | View examples |
| Inspect pool state | Get-WebAppPoolState -Name 'CmdMemoPool' | View examples |
| Read an effective setting | Get-WebConfigurationProperty -PSPath `
'IIS:\' -Location 'CmdMemo' -Filter 'system.webServer/directoryBrowse' -Name enabled | View examples |
| Preview disabling browsing | Set-WebConfigurationProperty -PSPath `
'IIS:\' -Location 'CmdMemo' -Filter 'system.webServer/directoryBrowse' -Name enabled -Value false -WhatIf | View examples |
| Back up IIS configuration | Backup-WebConfiguration -Name 'Before-CmdMemo-20260812' | View examples |
| List configuration backups | Get-WebConfigurationBackup | View examples |
| Preview configuration restore | Restore-WebConfiguration -Name 'Before-CmdMemo-20260812' `
-WhatIf | View examples |
| Create an application pool | New-WebAppPool -Name 'CmdMemoPool' | View examples |
| Preview no managed runtime | Set-ItemProperty 'IIS:\AppPools\CmdMemoPool' -Name `
managedRuntimeVersion -Value '' -WhatIf | View examples |
| Restart an application pool | Restart-WebAppPool -Name 'CmdMemoPool' | View examples |
| Create a website | New-Website -Name 'CmdMemo' -PhysicalPath `
'C:\Sites\CmdMemo' -Port 80 -HostHeader `
'app.example.com' -ApplicationPool 'CmdMemoPool' | View examples |
| Create a web application | New-WebApplication -Name 'api' -Site 'CmdMemo' `
-PhysicalPath 'C:\Sites\CmdMemo\Api' -ApplicationPool `
'CmdMemoPool' | View examples |
| Add an SNI HTTPS binding | New-WebBinding -Name 'CmdMemo' -Protocol https -Port 443 `
-IPAddress '*' -HostHeader 'app.example.com' -SslFlags `
1 | View examples |
| Attach the TLS certificate | $binding.AddSslCertificate($certificate.Thumbprint, `
'My') | View examples |
| Test an application URL | Invoke-WebRequest -Uri 'https://app.example.com/health' `
-TimeoutSec 15 | View examples |
| Inspect active requests | Get-WebRequest -AppPool 'CmdMemoPool' | View examples |
| Read recent IIS log lines | $site = Get-Website -Name 'CmdMemo'; Get-Content -Path `
"C:\inetpub\logs\LogFiles\W3SVC$($site.Id)\u_ex*.log" `
-Tail 50 | View examples |
Compute, Apps, and Platforms · 19 commands
PowerShell Processes and Services Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| List processes | Get-Process | View examples |
| Find processes by name | Get-Process -Name 'pwsh' | View examples |
| Find a process by ID | Get-Process -Id 4242 | View examples |
| Rank memory use | Get-Process |
Sort-Object -Property WorkingSet64 -Descending |
Select-Object -First 10 Name, Id, WorkingSet64 | View examples |
| Start a process | $process = Start-Process -FilePath 'notepad.exe' `
-PassThru | View examples |
| Pass process arguments | Start-Process -FilePath 'notepad.exe' -ArgumentList `
'C:\Temp\notes.txt' | View examples |
| Wait for a process | Wait-Process -Id $process.Id -Timeout 30 | View examples |
| Preview process stopping | Stop-Process -Id 4242 -WhatIf | View examples |
| Confirm process stopping | Stop-Process -Id 4242 -Confirm | View examples |
| List Windows services | Get-Service | View examples |
| Find a service by name | Get-Service -Name 'Spooler' | View examples |
| List running services | Get-Service |
Where-Object -Property Status -EQ 'Running' | View examples |
| Show required services | Get-Service -Name 'WinRM' -RequiredServices | View examples |
| Show dependent services | Get-Service -Name 'WinRM' -DependentServices | View examples |
| Preview starting a service | Start-Service -Name 'Spooler' -WhatIf | View examples |
| Preview stopping a service | Stop-Service -Name 'Spooler' -WhatIf | View examples |
| Preview restarting a service | Restart-Service -Name 'Spooler' -WhatIf | View examples |
| Set automatic startup | Set-Service -Name 'BITS' -StartupType Automatic -WhatIf | View examples |
| Inspect startup settings | Get-Service -Name 'BITS' |
Select-Object Name, Status, StartType | View examples |
Compute, Apps, and Platforms · 19 commands
Windows Containers Operations Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Inspect the host build | Get-ComputerInfo -Property WindowsProductName, `
WindowsVersion, OsBuildNumber, OsArchitecture | View examples |
| Check the Containers feature | Get-WindowsFeature -Name Containers, Hyper-V | View examples |
| Inspect Docker endpoints | docker version | View examples |
| Inspect runtime configuration | docker info | View examples |
| Pull a serviced base image | docker pull `
mcr.microsoft.com/windows/servercore:ltsc2025 | View examples |
| List local images | docker image ls --digests --filter `
reference='mcr.microsoft.com/windows/servercore:*' | View examples |
| Inspect image OS metadata | docker image inspect `
mcr.microsoft.com/windows/servercore:ltsc2025 --format `
'{{.Os}} {{.OsVersion}} {{.Architecture}}' | View examples |
| Build from refreshed layers | docker build --pull --tag contoso/webapp:2026.08 . | View examples |
| Capture a repository digest | docker image inspect contoso/webapp:2026.08 --format `
'{{json .RepoDigests}}' | View examples |
| Run a disposable version check | docker run --rm --isolation=hyperv `
mcr.microsoft.com/windows/servercore:ltsc2025 cmd.exe `
/S /C ver | View examples |
| Start a bounded test service | docker run --detach --name webapp-test `
--isolation=hyperv --memory 1g --publish `
127.0.0.1:8080:8080 contoso/webapp:2026.08 | View examples |
| List all containers | docker container ls --all --no-trunc | View examples |
| Inspect container configuration | docker container inspect webapp-test | View examples |
| List managed volumes | docker volume ls | View examples |
| Inspect the NAT network | docker network inspect nat | View examples |
| Read recent application logs | docker logs --timestamps --tail 100 webapp-test | View examples |
| Sample resource usage | docker stats --no-stream webapp-test | View examples |
| Stop with a grace period | docker stop --time 30 webapp-test | View examples |
| Remove a stopped container | docker container rm webapp-test | View examples |
Compute, Apps, and Platforms · 14 commands
Windows Package Manager winget Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Search packages | winget search --query 'PowerShell' | View examples |
| Inspect an exact package | winget show --id Microsoft.PowerShell --exact --source `
winget | View examples |
| List installed packages | winget list | View examples |
| Find one installed ID | winget list --id Microsoft.PowerShell --exact | View examples |
| Install exact package | winget install --id Microsoft.PowerShell --exact `
--source winget | View examples |
| Request user scope | winget install --id Vendor.App --exact --scope user | View examples |
| List upgrades | winget upgrade | View examples |
| Upgrade one package | winget upgrade --id Microsoft.PowerShell --exact | View examples |
| Export package references | winget export --output '.\packages.json' `
--include-versions | View examples |
| Preview an import | winget import --import-file '.\packages.json' `
--ignore-unavailable --disable-interactivity | View examples |
| Pin an installed package | winget pin add --id Vendor.App --exact | View examples |
| List sources | winget source list | View examples |
| Refresh sources | winget source update | View examples |
| Open logs directory | winget --open-logs | View examples |
Compute, Apps, and Platforms · 17 commands
Windows Subsystem for Linux Management Cheat Sheet
| Use | Syntax | Examples |
|---|---|---|
| Show WSL status | wsl.exe --status | View examples |
| Show component versions | wsl.exe --version | View examples |
| List installed distributions | wsl.exe --list --verbose | View examples |
| List available distributions | wsl.exe --list --online | View examples |
| Install without launching | wsl.exe --install --distribution Debian --no-launch | View examples |
| Set default distribution | wsl.exe --set-default Debian | View examples |
| Default new installs to WSL 2 | wsl.exe --set-default-version 2 | View examples |
| Convert a distribution | wsl.exe --set-version Debian 2 | View examples |
| Run in a named distribution | wsl.exe --distribution Debian --exec bash -lc `
'id && uname -a' | View examples |
| Run as an explicit user | wsl.exe --distribution Debian --user dev --exec whoami | View examples |
| Update WSL runtime | wsl.exe --update | View examples |
| Terminate one distribution | wsl.exe --terminate Debian | View examples |
| Shut down all WSL instances | wsl.exe --shutdown | View examples |
| Export distribution to TAR | wsl.exe --export Debian 'D:\WSL-Backups\Debian.tar' | View examples |
| Hash exported backup | Get-FileHash -LiteralPath 'D:\WSL-Backups\Debian.tar' `
-Algorithm SHA256 | View examples |
| Import under a test name | wsl.exe --import Debian-Restore 'D:\WSL\Debian-Restore' `
'D:\WSL-Backups\Debian.tar' --version 2 | View examples |
| Unregister a distribution | wsl.exe --unregister Debian | View examples |



