PowerShell command reference
Find command syntax, examples and expected output. Browser labs evaluate supported commands against fictional data; other examples are for inspection.
Active Directory & identity 25 commands
Manage users, groups, computers, OUs, and domains with the Active Directory cmdlets.
Add-ADGroupMember
AddUse Add-ADGroupMember to add users, computers or other groups to an Active Directory group. See its syntax, examples, and output.
Disable-ADAccount
DisableUse Disable-ADAccount to disable an Active Directory user or computer account, blocking sign-in while keeping the object.
Enable-ADAccount
EnableUse Enable-ADAccount to enable a disabled Active Directory user or computer account. Review syntax and sample output, then try an example in the browser lab.
Get-ADComputer
GetUse Get-ADComputer to retrieve computer accounts from Active Directory. Review syntax and sample output, then try an example in the browser lab.
Get-ADDomain
GetUse Get-ADDomain to return information about an Active Directory domain, including its FSMO role holders and naming contexts.
Get-ADDomainController
GetUse Get-ADDomainController to retrieve domain controllers in a domain or forest, with their roles, site and status. See its syntax, examples, and output.
Get-ADForest
GetUse Get-ADForest to return information about an Active Directory forest, including its domains, sites and forest-level role holders.
Get-ADGroup
GetUse Get-ADGroup to retrieve security and distribution groups from Active Directory. Review syntax and sample output, then try an example in the browser lab.
Get-ADGroupMember
GetUse Get-ADGroupMember to list the members of an Active Directory group, optionally expanding nested groups. See its syntax, examples, and output.
Get-ADObject
GetUse Get-ADObject to retrieve any object from Active Directory regardless of type, including deleted objects. See its syntax, examples, and output.
Get-ADOrganizationalUnit
GetUse Get-ADOrganizationalUnit to list Active Directory OUs with their distinguished names — the containers Group Policy and delegated administration target.
Get-ADReplicationFailure
GetUse Get-ADReplicationFailure to report AD replication failures per domain controller, so an unreplicated change stops looking like a permissions problem.
Get-ADReplicationPartnerMetadata
GetUse Get-ADReplicationPartnerMetadata to show when each replication partner last succeeded — the complement to Get-ADReplicationFailure.
Get-ADUser
GetUse Get-ADUser to retrieve user accounts from Active Directory by identity, filter or LDAP query. See its syntax, examples, and output.
Move-ADObject
MoveUse Move-ADObject to move an Active Directory object to a different organizational unit or container. See its syntax, examples, and output.
New-ADComputer
NewUse New-ADComputer to create a computer account in Active Directory before the machine joins the domain. See its syntax, examples, and output.
New-ADGroup
NewUse New-ADGroup to create a security or distribution group in Active Directory. Review syntax and sample output, then try an example in the browser lab.
New-ADUser
NewUse New-ADUser to create an Active Directory user account with identity attributes like -Name, -SamAccountName, -UserPrincipalName, and -AccountPassword.
Remove-ADGroupMember
RemoveUse Remove-ADGroupMember to remove members from an Active Directory group. Review syntax and sample output, then try an example in the browser lab.
Remove-ADUser
RemoveUse Remove-ADUser to delete an Active Directory user account. Confirm the identity first — deletion is immediate and hard to undo.
Search-ADAccount
SearchUse Search-ADAccount to find accounts matching a built-in condition such as locked out, disabled, expired or inactive. See its syntax, examples, and output.
Set-ADComputer
SetUse Set-ADComputer to modify attributes on an existing Active Directory computer account. See its syntax, examples, and output.
Set-ADUser
SetUse Set-ADUser to modify attributes on an existing Active Directory user account. Review syntax and sample output, then try an example in the browser lab.
Start-ADSyncSyncCycle
StartUse Start-ADSyncSyncCycle to request a Microsoft Entra Connect Sync cycle after checking scheduler state and the intended server.
Unlock-ADAccount
UnlockUse Unlock-ADAccount to clear the lockout on an Active Directory account after too many failed sign-in attempts. Review examples and related commands.
Files, folders & storage 22 commands
Navigate drives, read and write files, and work with archives and ACLs.
Add-Content
AddUse Add-Content to append a value to the end of a file, leaving existing content in place. See its syntax, examples, and output.
Clear-Content
ClearUse Clear-Content to empty a file without deleting it, leaving a zero-length file behind. See its syntax, examples, and output.
Compress-Archive
CompressUse Compress-Archive to create a zip archive from files or folders. Review syntax and sample output, then try an example in the browser lab.
Copy-Item
CopyUse Copy-Item to copy files or directories. Review path handling, recursive copies and examples before choosing a destination.
Expand-Archive
ExpandUse Expand-Archive to extract the contents of a zip archive to a folder. Review syntax and sample output, then try an example in the browser lab.
Get-Acl
GetUse Get-Acl to return the security descriptor of a file, folder, registry key or other securable object. See its syntax, examples, and output.
Get-ChildItem
GetUse Get-ChildItem to get the items and child items in one or more specified locations. Review syntax and sample output, then try an example in the browser lab.
Get-Content
GetUse Get-Content to get the content of an item at the specified location, most commonly a text file. See its syntax, examples, and output.
Get-FileHash
GetUse Get-FileHash to compute a cryptographic hash of a file, defaulting to SHA256. Review syntax and sample output, then try an example in the browser lab.
Get-Item
GetUse Get-Item to return the item at a path — file, folder, registry key, or any provider item — to inspect its properties.
Get-PSDrive
GetUse Get-PSDrive to list the drives available in the session, including those that are not filesystems. See its syntax, examples, and output.
Join-Path
JoinUse Join-Path to combine path segments into one path using the correct separator for the platform. See its syntax, examples, and output.
Move-Item
MoveUse Move-Item to move a file or directory to a new location, and rename it if you change the leaf name. See its syntax, examples, and output.
New-Item
NewUse New-Item to create a new item, such as a file, directory, registry key, or provider-specific object. See its syntax, examples, and output.
Out-File
OutUse Out-File to write the formatted text representation of objects to a file. Review syntax and sample output, then try an example in the browser lab.
Remove-Item
RemoveUse Remove-Item to delete files, folders, registry keys, or other provider items; -Recurse and -Force clear non-empty trees.
Resolve-Path
ResolveUse Resolve-Path to turn a relative path or a wildcard into one or more full paths, failing if nothing matches. See its syntax, examples, and output.
Set-Acl
SetUse Set-Acl to apply a security descriptor to a file, folder or registry key. Review syntax and sample output, then try an example in the browser lab.
Set-Content
SetUse Set-Content to replace the entire contents of a file with the value you supply. Review syntax and sample output, then try an example in the browser lab.
Split-Path
SplitUse Split-Path to return one part of a path: the parent directory, the file name, the extension, or the qualifier. See its syntax, examples, and output.
Test-Path
TestUse Test-Path to return $true or $false for whether a path exists — the guard to run before reading, writing, or deleting.
Rename-Item
OtherUse Rename-Item to rename files, folders, and registry keys, or bulk-rename many files at once.
System: processes, services & computer 20 commands
Inspect and control processes, services, and the local machine.
Get-CimInstance
GetUse Get-CimInstance to get instances of CIM classes from a CIM server. See CimCmdlets module requirements and examples. See its syntax, examples, and output.
Get-ComputerInfo
GetUse Get-ComputerInfo to return a single object with over a hundred properties describing the operating system and hardware.
Get-Counter
GetRead Windows performance counters with Get-Counter. Discover localized paths, choose sample intervals and counts, and inspect CounterSamples.
Get-HotFix
GetUse Get-HotFix to list installed updates that were delivered as hotfix packages. Review syntax and sample output, then try an example in the browser lab.
Get-Process
GetUse Get-Process to get the processes that are running on the local computer. Review syntax and sample output, then try an example in the browser lab.
Get-Service
GetUse Get-Service to get objects that represent services on a Windows computer, including running and stopped services. See its syntax, examples, and output.
Get-WinEvent
GetUse Get-WinEvent to get events from event logs and event tracing log files on local and remote computers. See its syntax, examples, and output.
Restart-Computer
RestartReboot a local or remote computer with Restart-Computer. Preview targets with -WhatIf and use -Wait for remote Windows systems.
Restart-Service
RestartUse Restart-Service to stop and then start one or more Windows services. Review syntax and sample output, then try an example in the browser lab.
Set-Service
SetUse Set-Service to start, stop or suspend a service, and change service properties such as StartupType and DisplayName. See its syntax, examples, and output.
Start-Process
StartUse Start-Process to launch an executable or open a file with its associated program. Review syntax and sample output, then try an example in the browser lab.
Start-Service
StartUse Start-Service to start a stopped Windows service by name or display name. Review syntax and sample output, then try an example in the browser lab.
Stop-Process
StopUse Stop-Process to stop running processes by name or ID; -Force ends processes that ignore a normal stop request. See its syntax, examples, and output.
Stop-Service
StopUse Stop-Service to stop a running Windows service; -Force also stops services that depend on it. See its syntax, examples, and output.
Wait-Process
WaitUse Wait-Process to block until one or more processes exit, or until a timeout expires. Review syntax and sample output, then try an example in the browser lab.
Get-EventLog
GetUse Get-EventLog to read the System, Application, and Security logs, filtered by newest, type, or source.
Get-WindowsFeature
GetUse Get-WindowsFeature to list the roles and features installed on a Windows Server and check a specific role.
Install-WindowsFeature
OtherUse Install-WindowsFeature to install a Windows Server role or feature, such as AD DS or IIS, with its management tools.
Get-ItemProperty
GetUse Get-ItemProperty to read registry values from a key without opening regedit.
Set-ItemProperty
SetUse Set-ItemProperty to write registry values and set properties on files and folders.
Objects & the pipeline 11 commands
Shape, filter, measure, and inspect the objects flowing through a pipeline.
Compare-Object
CompareUse Compare-Object to compare two sets of objects and report which items are only in one of them. See its syntax, examples, and output.
ForEach-Object
ForEachUse ForEach-Object to perform an operation on each item in a collection of input objects. See Microsoft.PowerShell.Utility module requirements and examples.
Get-Member
GetUse Get-Member to list an object's properties and methods — the fastest way to discover what pipeline output can do. See its syntax, examples, and output.
Group-Object
GroupUse Group-Object to group objects that share a value for one or more properties, and count each group. See its syntax, examples, and output.
Measure-Object
MeasureUse Measure-Object to count objects, or calculate sum, average, minimum and maximum for a numeric property. See its syntax, examples, and output.
Select-Object
SelectUse Select-Object to keep only chosen properties, take the first N objects, or expand one property into its values. See its syntax, examples, and output.
Sort-Object
SortUse Sort-Object to order objects by property, ascending by default or -Descending; -Unique drops duplicates. See its syntax, examples, and output.
Tee-Object
TeeUse Tee-Object to pass objects along the pipeline while also saving them to a file or a variable. See its syntax, examples, and output.
Where-Object
WhereUse Where-Object to select objects from a collection based on their property values. See Microsoft.PowerShell.Utility module requirements and examples.
Add-Member
OtherUse Add-Member to add a property or method to an existing object for custom reports.
New-Object
NewUse New-Object to create .NET objects, COM objects, and custom PSObjects.
Azure & Microsoft 365 24 commands
Manage Azure resources plus Exchange Online, SharePoint, and Teams.
Connect-AzAccount
ConnectUse Connect-AzAccount to sign in to Azure and verify the tenant and subscription context. See Az module requirements and examples.
Connect-ExchangeOnline
ConnectUse Connect-ExchangeOnline to connect to Exchange Online and verify the administrator session. See ExchangeOnlineManagement module requirements and examples.
Get-AzContext
GetUse Get-AzContext to inspect the active Azure account, tenant and subscription. See Az module requirements and examples.
Get-AzDisk
GetUse Get-AzDisk to inventory Azure managed disks and inspect attachment state. See Az module requirements and examples. See its syntax, examples, and output.
Get-AzKeyVault
GetUse Get-AzKeyVault to list Azure vault resources and distinguish access to secret values. See Az module requirements and examples.
Get-AzResource
GetUse Get-AzResource to inventory Azure resources by resource group and resource type. See Az module requirements and examples.
Get-AzResourceGroup
GetUse Get-AzResourceGroup to query Azure resource groups and inspect location and tags. See Az module requirements and examples.
Get-AzRoleAssignment
GetUse Get-AzRoleAssignment to query Azure role assignments by identity, scope and role. See Az module requirements and examples.
Get-AzStorageAccount
GetUse Get-AzStorageAccount to inventory Azure storage accounts and inspect configuration. See Az module requirements and examples.
Get-AzSubscription
GetUse Get-AzSubscription to list accessible Azure subscriptions and inspect their tenant IDs. See Az module requirements and examples.
Get-AzVM
GetUse Get-AzVM to retrieve Azure VM configuration and check power state with Status. See Az module requirements and examples.
Get-DistributionGroup
GetUse Get-DistributionGroup to list distribution groups and mail-enabled security groups. See ExchangeOnlineManagement module requirements and examples.
Get-DistributionGroupMember
GetUse Get-DistributionGroupMember to list a distribution group's direct members; nested groups are separate objects. See its syntax, examples, and output.
Get-EXOMailbox
GetUse Get-EXOMailbox to inventory Exchange Online mailboxes with explicit properties. See ExchangeOnlineManagement module requirements and examples.
Get-EXOMailboxPermission
GetUse Get-EXOMailboxPermission to inspect mailbox permissions — User, AccessRights, IsInherited and Deny together. See its syntax, examples, and output.
Get-EXOMailboxStatistics
GetUse Get-EXOMailboxStatistics to return mailbox storage statistics such as TotalItemSize. See its syntax, examples, and output.
Get-InboundConnector
GetUse Get-InboundConnector to inspect inbound mail connectors and their sender restrictions. See ExchangeOnlineManagement module requirements and examples.
Get-InboxRule
GetUse Get-InboxRule to inspect mailbox inbox rules, including hidden rules and forwarding. See ExchangeOnlineManagement module requirements and examples.
Get-OutboundConnector
GetUse Get-OutboundConnector to inspect outbound mail connectors and recipient routing settings. See ExchangeOnlineManagement module requirements and examples.
Get-SPOSite
GetUse Get-SPOSite to inventory SharePoint Online site collections and check query limits. Review syntax and sample output, then try an example in the browser lab.
Get-SPOUser
GetUse Get-SPOUser to list users in a SharePoint site collection and check access assumptions. See its syntax, examples, and output.
Get-Team
GetUse Get-Team to inventory Microsoft Teams and check account visibility limits. See MicrosoftTeams module requirements and examples.
Get-TransportRule
GetUse Get-TransportRule to inspect Exchange mail-flow rules, priorities, conditions and modes. See ExchangeOnlineManagement module requirements and examples.
Set-AzContext
SetUse Set-AzContext to select and verify the Azure subscription and tenant for later commands. See Az module requirements and examples.
Microsoft Graph 9 commands
Work with Entra ID users, groups, and service principals through Graph.
Connect-MgGraph
ConnectUse Connect-MgGraph to connect to Microsoft Graph with delegated or app-only authentication. See Microsoft.Graph module requirements and examples.
Get-MgApplication
GetUse Get-MgApplication to list app registrations and inspect credential expiry in Microsoft Graph. See its syntax, examples, and output.
Get-MgAuditLogSignIn
GetUse Get-MgAuditLogSignIn to query Entra sign-in logs with date filters and pagination. See Microsoft.Graph module requirements and examples.
Get-MgGroup
GetUse Get-MgGroup to list Microsoft Graph groups and distinguish their membership types. See Microsoft.Graph module requirements and examples.
Get-MgGroupMember
GetUse Get-MgGroupMember to enumerate direct Microsoft Graph group members with pagination. See Microsoft.Graph module requirements and examples.
Get-MgServicePrincipal
GetUse Get-MgServicePrincipal to list tenant service principals and distinguish object IDs from application IDs. See its syntax, examples, and output.
Get-MgSubscribedSku
GetUse Get-MgSubscribedSku to compare purchased and consumed Microsoft 365 license units. See Microsoft.Graph module requirements and examples.
Get-MgUser
GetUse Get-MgUser to query Microsoft Graph users with pagination and explicit properties. See Microsoft.Graph module requirements and examples.
Get-MgUserAuthenticationMethod
GetUse Get-MgUserAuthenticationMethod to list a user's registered authentication methods. Review syntax and sample output, then try an example in the browser lab.
Networking 14 commands
Adapters, IP configuration, DNS, firewall rules, and web requests.
Get-DnsClientServerAddress
GetUse Get-DnsClientServerAddress to show the DNS servers configured per network interface. See its syntax, examples, and output.
Get-NetAdapter
GetUse Get-NetAdapter to list the network adapters on a Windows machine with their status, speed and MAC address. See its syntax, examples, and output.
Get-NetFirewallRule
GetUse Get-NetFirewallRule to list Windows Firewall rules with their direction, action and enabled state. See its syntax, examples, and output.
Get-NetIPAddress
GetUse Get-NetIPAddress to list the IP addresses configured on the machine's interfaces. Review syntax and sample output, then try an example in the browser lab.
Get-NetIPConfiguration
GetUse Get-NetIPConfiguration to return a per-interface summary combining IP address, gateway and DNS servers. See its syntax, examples, and output.
Get-NetRoute
GetUse Get-NetRoute to list the machine's IP routing table entries with their destinations and metrics. See its syntax, examples, and output.
Get-NetTCPConnection
GetUse Get-NetTCPConnection to list TCP connections and listening ports with the owning process id. See its syntax, examples, and output.
Invoke-RestMethod
InvokeUse Invoke-RestMethod to call a REST endpoint and convert the JSON or XML response into PowerShell objects automatically.
Invoke-WebRequest
InvokeUse Invoke-WebRequest to fetch a URL and return the full response: status code, headers, and the raw or parsed content. See its syntax, examples, and output.
Resolve-DnsName
ResolveUse Resolve-DnsName to query DNS for a name or address and return the records, bypassing the local cache when asked. See its syntax, examples, and output.
Set-NetFirewallRule
SetUse Set-NetFirewallRule to change properties of existing Windows Firewall rules. Review syntax and sample output, then try an example in the browser lab.
Test-NetConnection
TestUse Test-NetConnection to test connectivity to a host, optionally on a specific TCP port, and report the route and DNS resolution.
Test-Connection
OtherUse Test-Connection to ping a host, test a TCP port, and get a true-or-false answer for scripts.
New-NetFirewallRule
NewUse New-NetFirewallRule to create a Windows Firewall rule to allow or block traffic.
Security, policy & access 10 commands
Execution policy, code signatures, and local users and groups.
Get-AuthenticodeSignature
GetUse Get-AuthenticodeSignature to read a file's signature status: Valid, NotSigned, HashMismatch, NotTrusted, NotSupportedFileFormat, or UnknownError.
Get-ExecutionPolicy
GetUse Get-ExecutionPolicy to report the effective execution policy, or the policy set at each scope with -List. See its syntax, examples, and output.
Get-LocalGroup
GetFind Windows local groups by name, wildcard or SID with Get-LocalGroup. See accurate examples, separate parameter sets and membership guidance.
Get-LocalGroupMember
GetUse Get-LocalGroupMember to list the members of a local group, including domain accounts that belong to it. See its syntax, examples, and output.
Get-LocalUser
GetUse Get-LocalUser to list local user accounts on a Windows machine with their enabled state and password settings. See its syntax, examples, and output.
Set-AuthenticodeSignature
SetUse Set-AuthenticodeSignature to sign a script with a code-signing certificate, proving origin and integrity. See its syntax, examples, and output.
Set-ExecutionPolicy
SetUse Set-ExecutionPolicy to change the execution policy for a scope, controlling whether script files may run. See its syntax, examples, and output.
Get-Credential
GetUse Get-Credential to securely prompt for a username and password as a PSCredential object.
ConvertTo-SecureString
OtherUse ConvertTo-SecureString to turn plain text into a SecureString for credentials, or decrypt a stored one.
New-LocalUser
NewUse New-LocalUser to create a local Windows user account with a secure password and expiry options.
Remoting, jobs & sessions 13 commands
Run commands on remote machines and manage background jobs.
Enter-PSSession
EnterUse Enter-PSSession to start an interactive remoting session, redirecting your prompt to a remote computer. See its syntax, examples, and output.
Get-CimSession
GetUse Get-CimSession to list the CIM sessions open in the current PowerShell session. Review syntax and sample output, then try an example in the browser lab.
Get-Job
GetUse Get-Job to list the jobs in the session with their current state. Review syntax and sample output, then try an example in the browser lab.
Get-PSSession
GetUse Get-PSSession to list the PSSessions in the current session, or those available on a remote computer. See its syntax, examples, and output.
New-CimSession
NewUse New-CimSession to create a reusable CIM session to a remote computer for use with the CIM cmdlets. See its syntax, examples, and output.
New-PSSession
NewUse New-PSSession to open a persistent connection to a remote computer and return a session object. See its syntax, examples, and output.
Receive-Job
ReceiveUse Receive-Job to collect the output of a job and, by default, remove it from the job's buffer. See its syntax, examples, and output.
Remove-CimSession
RemoveUse Remove-CimSession to close CIM sessions and release their connections. Review syntax and sample output, then try an example in the browser lab.
Remove-Job
RemoveUse Remove-Job to delete a job from the session, discarding any output it still holds. Review syntax and sample output, then try an example in the browser lab.
Remove-PSSession
RemoveUse Remove-PSSession to close a PSSession and release the resources it holds on the remote computer. See its syntax, examples, and output.
Start-Job
StartUse Start-Job to run a script block in a separate background process and return a job object immediately. See its syntax, examples, and output.
Start-ThreadJob
StartUse Start-ThreadJob to run a script block on a thread inside the current process and return a job object. See its syntax, examples, and output.
Stop-Job
StopUse Stop-Job to stop a running job, leaving it in the session so partial output can still be collected. See its syntax, examples, and output.
Text, data & formatting 9 commands
Strings, CSV, JSON, XML, and display formatting.
ConvertFrom-Json
ConvertFromUse ConvertFrom-Json to convert a JSON-formatted string to a PowerShell object. See Microsoft.PowerShell.Utility module requirements and examples.
ConvertTo-Json
ConvertToUse ConvertTo-Json to convert an object to a JSON-formatted string. See Microsoft.PowerShell.Utility module requirements and examples.
ConvertTo-Xml
ConvertToUse ConvertTo-Xml to convert objects into an XML representation of their properties. Review syntax and sample output, then try an example in the browser lab.
Export-Csv
ExportUse Export-Csv to convert objects into CSV-formatted data and write it to a file. See Microsoft.PowerShell.Utility module requirements and examples.
Format-List
FormatUse Format-List to render each object as a vertical list of property names and values. Review syntax and sample output, then try an example in the browser lab.
Format-Table
FormatUse Format-Table to render objects as a table of columns for display. Review syntax and sample output, then try an example in the browser lab.
Import-Csv
ImportUse Import-Csv to read a CSV file and return one object per row, with the header line becoming property names. See its syntax, examples, and output.
Out-String
OutUse Out-String to convert objects into the string form PowerShell would have displayed. Review syntax and sample output, then try an example in the browser lab.
Select-String
OtherUse Select-String to search files and text for a pattern, like grep, with file and line numbers.
Shell, modules & session 34 commands
Help, history, variables, modules, transcripts, and the session itself.
Find-Module
FindUse Find-Module to search a registered repository for modules without installing anything. See its syntax, examples, and output.
Get-Alias
GetUse Get-Alias to list the aliases defined in the session, or resolve an alias to the command it points at. See its syntax, examples, and output.
Get-Command
GetUse Get-Command to get information about PowerShell commands, including cmdlets, aliases, functions, filters, scripts, applications, and external commands.
Get-Date
GetUse Get-Date to return the current date and time, or convert and format a date you supply. See its syntax, examples, and output.
Get-Error
GetUse Get-Error to display the most recent errors in full detail, including nested exceptions and invocation information. See its syntax, examples, and output.
Get-Help
GetLook up syntax, parameters and examples for a PowerShell command. Use the help output to understand a command before running it.
Get-History
GetUse Get-History to return the commands run in the current session, with an id for each. Review syntax and sample output, then try an example in the browser lab.
Get-InstalledModule
GetUse Get-InstalledModule to list modules installed by Install-Module, with the version and repository they came from. See its syntax, examples, and output.
Get-Location
GetUse Get-Location to return the current working directory for the session. Review syntax and sample output, then try an example in the browser lab.
Get-Module
GetUse Get-Module to list modules loaded in the session, or with -ListAvailable those installed and ready to load. See its syntax, examples, and output.
Get-Random
GetUse Get-Random to return a random number, or pick random items from a collection. Review syntax and sample output, then try an example in the browser lab.
Get-Variable
GetUse Get-Variable to list the variables in the current scope, or retrieve one by name. Review syntax and sample output, then try an example in the browser lab.
Import-Module
ImportUse Import-Module to load a module into the session so its commands are available. Review syntax and sample output, then try an example in the browser lab.
Install-Module
InstallUse Install-Module to download a module from a registered repository and install it for the current user or all users. See its syntax, examples, and output.
Invoke-Command
InvokeUse Invoke-Command to run a command or script block on one or more remote computers and return the results. See its syntax, examples, and output.
Out-Host
OutUse Out-Host to send output to the host for display, optionally one screen at a time. Review syntax and sample output, then try an example in the browser lab.
Remove-Module
RemoveUnload a PowerShell module from the current session. Compare Remove-Module with uninstalling, check loaded modules and understand binary reload limits.
Remove-Variable
RemoveUse Remove-Variable to delete a variable and its value from the session; -Force also clears read-only variables. See its syntax, examples, and output.
Save-Module
SaveUse Save-Module to download a module and its dependencies to a folder without installing it. See its syntax, examples, and output.
Set-Location
SetUse Set-Location to change the current working directory, on any drive a provider exposes. See its syntax, examples, and output.
Set-Variable
SetUse Set-Variable to create or change a variable, with control over its scope and options. See its syntax, examples, and output.
Start-Transcript
StartUse Start-Transcript to begin recording the session, both commands and their output, to a text file. See its syntax, examples, and output.
Stop-Transcript
StopUse Stop-Transcript to end the current transcript and close the file. See Microsoft.PowerShell.Host module requirements and examples.
Trace-Command
TraceUse Trace-Command to trace PowerShell's internal operations while running an expression, showing how it resolved what you asked for.
Write-Debug
WriteUse Write-Debug to write a developer-facing message to the debug stream, hidden unless -Debug is passed. See its syntax, examples, and output.
Write-Error
WriteUse Write-Error to write a non-terminating error to the error stream without stopping execution. See its syntax, examples, and output.
Write-Information
WriteUse Write-Information to write a tagged message to the information stream, which can be captured separately from output.
Write-Output
WriteUse Write-Output to send objects to the success stream, which is the stream the pipeline carries and a caller can capture.
Write-Verbose
WriteUse Write-Verbose to write a diagnostic message that stays hidden unless the caller asks for it with -Verbose. See its syntax, examples, and output.
Write-Warning
WriteUse Write-Warning to write a message to the warning stream, shown by default but kept out of your data. See its syntax, examples, and output.
Read-Host
OtherUse Read-Host to ask the user a question and read the answer, or read a password securely.
Write-Host
OtherUse Write-Host to write coloured messages to the console for status updates and warnings.
Write-Progress
OtherUse Write-Progress to show a progress bar with percentage and time remaining for long tasks.
Start-Sleep
OtherUse Start-Sleep to pause a script for seconds or milliseconds between retries and steps.
Group Policy 5 commands
Read Group Policy objects, reports, and links.
Get-GPO
GetUse Get-GPO to retrieve Group Policy objects by name, GUID or full inventory. See GroupPolicy module requirements and examples.
Get-GPOReport
GetUse Get-GPOReport to export Group Policy reports as HTML or XML for inspection. See GroupPolicy module requirements and examples.
New-GPO
NewUse New-GPO to create a Group Policy object and verify its GUID before linking it. See GroupPolicy module requirements and examples.
Set-GPLink
SetUse Set-GPLink to change GPO link order, enforcement and enabled state for a target OU. See GroupPolicy module requirements and examples.
Invoke-GPUpdate
OtherUse Invoke-GPUpdate to force a Group Policy refresh on a local or remote computer.
Scheduled tasks 6 commands
Create and inspect scheduled tasks.
Get-ScheduledTask
GetUse Get-ScheduledTask to list scheduled tasks with their definitions, triggers and current state. See its syntax, examples, and output.
Get-ScheduledTaskInfo
GetUse Get-ScheduledTaskInfo to return run history for a scheduled task: last run time, last result and next run time. See its syntax, examples, and output.
Register-ScheduledTask
RegisterUse Register-ScheduledTask to create a scheduled task from action, trigger, principal and settings objects. See its syntax, examples, and output.
Start-ScheduledTask
StartUse Start-ScheduledTask to run a scheduled task immediately, without waiting for its trigger. See its syntax, examples, and output.
Stop-ScheduledTask
StopUse Stop-ScheduledTask to terminate a running instance of a scheduled task. Review syntax and sample output, then try an example in the browser lab.
New-ScheduledTaskTrigger
NewUse New-ScheduledTaskTrigger to define when a scheduled task runs: daily, weekly, at logon, or at startup.
Error decoder
Paste the red text. The decoder names the kind of error it is and points at the lesson that fixes it. It never runs your code, and decoding happens entirely in your browser — your pasted error is never sent anywhere.