PowerShellBlog - Cmdlets
0-9
A
Add-Computer
The Add-Computer cmdlet adds the local computer to a domain or workgroup. It can also add the local computer to a specified organizational unit (OU) or container within a domain.
Add-Content
The Add-Content cmdlet appends content, such as words or data, to a file. It can also be used to add content to any item that has a writable content stream.
Add-History
The Add-History cmdlet adds entries to the session history, allowing users to review and reuse commands that have been executed.
Add-JobTrigger
The Add-JobTrigger cmdlet adds a job trigger to a scheduled job, which can start a job based on certain conditions or events.
Add-LocalGroupMember
The Add-LocalGroupMember cmdlet adds members, such as users or groups, to a local security group.
Add-Member
The Add-Member cmdlet adds a user-defined custom member (such as a property or method) to an instance of a PowerShell object.
Add-PSSnapin
The Add-PSSnapin cmdlet adds one or more snap-ins to the current session, making the cmdlets and providers in the snap-ins available for use.
Add-Type
The Add-Type cmdlet allows users to define a .NET Framework type (a class or structure) and add it to the PowerShell session.
Add-WindowsCapability
The Add-WindowsCapability cmdlet adds a Windows capability package to the image, enabling additional features or functionalities.
Add-WindowsDriver
The Add-WindowsDriver cmdlet adds a third-party driver to an offline Windows image, ensuring that the driver is available when the image is deployed.
Add-WindowsImage
The Add-WindowsImage cmdlet adds a new volume image to a .wim file, which is used to capture and deploy Windows operating systems.
Approve-DnsServerConditionalForwarderZone
The Approve-DnsServerConditionalForwarderZone cmdlet approves a pending conditional forwarder zone for a DNS server, allowing DNS queries to be forwarded to other DNS servers.
Approve-DnsServerTrustAnchor
The Approve-DnsServerTrustAnchor cmdlet approves a DNS server trust anchor, which is used to validate DNSSEC-signed DNS responses.
Approve-SmbShareAccess
The Approve-SmbShareAccess cmdlet grants a user access to an SMB share, controlling permissions for shared folders.
Assert-VMReplication
The Assert-VMReplication cmdlet confirms that a virtual machine replication is configured properly and that the replication state is as expected.
Associate-IPAddress
The Associate-IPAddress cmdlet associates an IP address with a physical network adapter, allowing network communication.
Attach-VMHardDiskDrive
The Attach-VMHardDiskDrive cmdlet attaches a virtual hard disk drive to a virtual machine, making the disk available for use by the VM.
Authorize-VMReplication
The Authorize-VMReplication cmdlet authorizes a virtual machine replication, allowing the VM to be replicated to another server.
Average-Object
The Average-Object cmdlet calculates the average of the properties of objects, providing a simple way to perform statistical analysis.
B
Backup-GPO
The Backup-GPO cmdlet backs up a specified Group Policy Object (GPO) to a file.
Backup-SqlDatabase
The Backup-SqlDatabase cmdlet backs up an SQL database to a backup device.
Block-FileShareAccess
The Block-FileShareAccess cmdlet blocks access to a file share for specified users or groups.
Block-SmbShareAccess
The Block-SmbShareAccess cmdlet blocks access to an SMB share for specified users or groups.
BranchCache-GetStatus
The BranchCache-GetStatus cmdlet retrieves the current status of the BranchCache service.
BranchCache-Reset
The BranchCache-Reset cmdlet resets the BranchCache service to its default settings.
BranchCache-SetPolicy
The BranchCache-SetPolicy cmdlet sets the policy for the BranchCache service.
BranchCacheStart
The BranchCacheStart cmdlet starts the BranchCache service.
BranchCacheStop
The BranchCacheStop cmdlet stops the BranchCache service.
Break
The Break cmdlet stops the execution of the script and enters the debugger.
Break-SqlCertificateEncryptionKey
The Break-SqlCertificateEncryptionKey cmdlet breaks the encryption key associated with a SQL certificate, rendering it unusable.
Break-String
The Break-String cmdlet splits a string into an array of substrings based on a specified delimiter.
Breakpoint
The Breakpoint cmdlet manages breakpoints within the PowerShell debugger, allowing users to set, remove, and list breakpoints.
Bundle-NetworkControllerConfiguration
The Bundle-NetworkControllerConfiguration cmdlet bundles the network controller configuration into a single package for deployment.
Bypass-StoreRestriction
The Bypass-StoreRestriction cmdlet allows users to bypass store restrictions, such as installing applications from unknown sources.
C
Checkpoint-Computer
The Checkpoint-Computer cmdlet creates a system restore point on the local computer (Windows).
Checkpoint-VM
The Checkpoint-VM cmdlet creates a checkpoint, or snapshot, for a virtual machine (VM), allowing you to revert the VM to a previous state.
Clear-Content
The Clear-Content cmdlet deletes the contents of an item, such as deleting the content of a file without deleting the file itself.
Clear-History
The Clear-History cmdlet deletes entries from the session history, allowing you to remove specific commands from the history.
Clear-Item
The Clear-Item cmdlet deletes the contents of an item, such as deleting the content of a file, but not the item itself.
Clear-ItemProperty
The Clear-ItemProperty cmdlet deletes the property value of an item, such as removing a registry value.
Clear-Variable
The Clear-Variable cmdlet deletes the value of a variable, effectively setting it to null or removing its content.
Close-Job
The Close-Job cmdlet stops a PowerShell background job, preventing it from continuing to run.
Compare-Object
The Compare-Object cmdlet compares two sets of objects, identifying differences between them.
Complete-Transaction
The Complete-Transaction cmdlet completes an active transaction, making any changes made during the transaction permanent.
Compress-Archive
The Compress-Archive cmdlet creates a compressed archive file (ZIP) from specified files and directories.
Connect-ExchangeOnline
The Connect-ExchangeOnline cmdlet connects to an Exchange Online session, allowing you to manage Exchange Online via PowerShell.
Connect-PSSession
The Connect-PSSession cmdlet connects to an existing PowerShell session on a remote computer.
Connect-VIServer
The Connect-VIServer cmdlet connects to a VMware vSphere server, allowing you to manage VMware resources via PowerShell.
Convert-Path
The Convert-Path cmdlet converts a Windows PowerShell path to a Win32 path.
Convert-String
The Convert-String cmdlet converts a string to another format, based on a specified conversion pattern.
ConvertFrom-Csv
The ConvertFrom-Csv cmdlet converts CSV data into objects that can be used within PowerShell.
ConvertFrom-Json
The ConvertFrom-Json cmdlet converts JSON data into objects that can be used within PowerShell.
ConvertFrom-SecureString
The ConvertTo-SecureString cmdlet converts a standard string into a secure string, which is encrypted for security purposes.
ConvertTo-Xml

The ConvertTo-Xml cmdlet converts objects into XML format, suitable for data storage or transfer.
Copy-Item
The Copy-Item cmdlet copies an item from one location to another, such as copying a file from one directory to another.
Copy-ItemProperty
The Copy-ItemProperty cmdlet copies a property from one item to another, such as copying a registry value.
Create-JobTrigger
The Create-JobTrigger cmdlet creates a job trigger for a scheduled job, which defines the conditions that start the job.
D
Disable-ComputerRestore
The Disable-ComputerRestore cmdlet disables the System Restore feature on the specified drive, preventing the creation of new restore points.
Disable-JobTrigger
The Disable-JobTrigger cmdlet disables a job trigger, preventing the associated scheduled job from starting automatically.
Disable-PSBreakpoint
The Disable-PSBreakpoint cmdlet disables a breakpoint in the current session, making it inactive.
Disable-PSRemoting
The Disable-PSRemoting cmdlet disables PowerShell remoting on the local computer, blocking remote sessions and commands.
Disable-PSSessionConfiguration
The Disable-PSSessionConfiguration cmdlet disables session configurations on the local computer, preventing remote access through these configurations.
Disable-ScheduledJob
The Disable-ScheduledJob cmdlet disables a scheduled job, preventing it from running automatically.
Disable-Service
The Disable-Service cmdlet stops a service and prevents it from starting automatically.
Disable-VMIntegrationService
The Disable-VMIntegrationService cmdlet disables integration services on a virtual machine, which can affect the VM’s performance and functionality.
Disable-VMResourceMetering
The Disable-VMResourceMetering cmdlet disables resource metering for a virtual machine, stopping the collection of resource usage data.
Disable-WindowsOptionalFeature
The Disable-WindowsOptionalFeature cmdlet disables an optional feature in a Windows image, removing its functionality.
Disable-WindowsUpdate
The Disable-WindowsUpdate cmdlet disables the Windows Update service, preventing the installation of updates.
Disconnect-PSSession
The Disconnect-PSSession cmdlet disconnects a PowerShell session, allowing it to be reconnected later.
Disconnect-VIServer
The Disconnect-VIServer cmdlet disconnects from a VMware vSphere server, ending the current session.
Dismount-DiskImage
The Dismount-DiskImage cmdlet dismounts a virtual disk file (such as an ISO or VHD) from the file system.
Dismount-VM
The Dismount-VM cmdlet dismounts a virtual machine, making it unavailable for use.
Dismount-VMHardDiskDrive
The Dismount-VMHardDiskDrive cmdlet dismounts a virtual hard disk drive from a virtual machine, making the disk unavailable to the VM.
Dismount-VMHostAssignableDevice
The Dismount-VMHostAssignableDevice cmdlet dismounts a device that is currently assigned to a virtual machine, making it available for other uses.
Dismount-Volume
The Dismount-Volume cmdlet dismounts a volume from a disk, making the volume inaccessible to the system.
Dismount-WindowsImage
The Dismount-WindowsImage cmdlet dismounts a Windows image file, such as a .wim file, from the system.
Display-Messages
The Display-Messages cmdlet displays messages to the user, typically used for providing information or alerts.
E
Enable-ComputerRestore
The Enable-ComputerRestore cmdlet enables the System Restore feature on the specified drive, allowing the creation of restore points.
Enable-JobTrigger
The Enable-JobTrigger cmdlet enables a job trigger, allowing the associated scheduled job to start automatically.
Enable-PSBreakpoint
The Enable-PSBreakpoint cmdlet enables a breakpoint in the current session, making it active.
Enable-PSRemoting
The Enable-PSRemoting cmdlet enables PowerShell remoting on the local computer, allowing remote sessions and commands.
Enable-PSSessionConfiguration
The Enable-PSSessionConfiguration cmdlet enables session configurations on the local computer, allowing remote access through these configurations.
Enable-ScheduledJob
The Enable-ScheduledJob cmdlet enables a scheduled job, allowing it to run automatically.
Enable-Service
The Enable-Service cmdlet starts a service and sets it to start automatically with the system.
Enable-VMIntegrationService
The Enable-VMIntegrationService cmdlet enables integration services on a virtual machine, improving the VM’s performance and functionality.
Enable-VMResourceMetering
The Enable-VMResourceMetering cmdlet enables resource metering for a virtual machine, allowing the collection of resource usage data.
Enable-WindowsOptionalFeature
The Enable-WindowsOptionalFeature cmdlet enables an optional feature in a Windows image, adding its functionality.
Enable-WindowsUpdate
The Enable-WindowsUpdate cmdlet enables the Windows Update service, allowing the installation of updates.
Expand-Archive
The Expand-Archive cmdlet extracts files from a compressed archive file (ZIP), expanding them to the specified location.
Expand-Disk
The Expand-Disk cmdlet expands the size of a virtual disk, increasing its capacity.
Expand-WindowsImage
The Expand-WindowsImage cmdlet applies an image to a specified volume, expanding the image to fill the volume.
Export-Alias
The Export-Alias cmdlet exports the current alias list to a file, preserving the alias settings for later use.
Export-Clixml
The Export-Clixml cmdlet exports objects to a Clixml file, which can be imported back into PowerShell.
Export-Console
The Export-Console cmdlet exports the current console configuration to a file, allowing you to restore the console settings later.
Export-Csv
The Export-Csv cmdlet exports objects to a CSV file, which can be opened in spreadsheet applications like Excel.
Export-FormatData
The Export-FormatData cmdlet exports formatting data from the current session, allowing you to reuse the formatting in other sessions.
Export-ModuleMember
The Export-ModuleMember cmdlet exports specified module members, such as functions and variables, making them available to other modules.
Export-PSSession
The Export-PSSession cmdlet exports commands from a session to a module, allowing you to reuse the session commands in other scripts.
F
Find-Command
The Find-Command cmdlet finds PowerShell commands in registered repositories, helping you discover and install them.
Find-DscResource
The Find-DscResource cmdlet finds Desired State Configuration (DSC) resources in registered repositories, allowing you to discover DSC resources.
Find-Module
The Find-Module cmdlet finds PowerShell modules in registered repositories, helping you discover and install them.
Find-RoleCapability
The Find-RoleCapability cmdlet finds role capabilities defined in registered repositories, allowing you to discover capabilities for Just Enough Administration (JEA).
Find-Script
The Find-Script cmdlet finds PowerShell scripts in registered repositories, helping you discover and install them.
ForEach-Object
The ForEach-Object cmdlet performs an operation on each item in a collection of input objects, processing them one at a time.
ForEach-Parallel
The ForEach-Parallel cmdlet executes a block of script in parallel for each item in a collection of input objects, allowing for faster processing.
ForEach-Process
The ForEach-Process cmdlet executes a block of script for each running process on the local or remote computer, enabling you to work with multiple processes simultaneously.
Format-Custom
The Format-Custom cmdlet formats the output according to a custom view, as defined in a .ps1xml file.
Format-List
The Format-List cmdlet formats the output as a list of properties, with each property displayed on a new line.
Format-Table
The Format-Table cmdlet formats the output as a table with columns for each property, providing a compact view.
Format-Wide
The Format-Wide cmdlet formats the output as a wide table, displaying only one property per object across multiple columns.
G
Get-Acl
The Get-Acl cmdlet gets the security descriptor for a specified resource, such as a file or registry key.
Get-Alias
The Get-Alias cmdlet gets the alias names for cmdlets, which are alternative names for PowerShell commands.
Get-AuthenticodeSignature
The Get-AuthenticodeSignature cmdlet gets the Authenticode signature for a file, verifying the digital signature of a script or executable.
Get-Command
The Get-Command cmdlet gets all PowerShell commands available in the session, including cmdlets, functions, aliases, and scripts.
Get-ComputerInfo
The Get-ComputerInfo cmdlet gets the basic information about the system’s hardware and operating system, providing details about the computer.
Get-Content
The Get-Content cmdlet gets the content of an item, such as a file, and displays it in the console.
Get-Credential
The Get-Credential cmdlet gets a credential object based on a username and password, which can be used for authentication in scripts.
Get-Culture
The Get-Culture cmdlet gets information about the current culture settings, including the language and regional settings of the computer.
Get-Date
The Get-Date cmdlet gets the current date and time, which can be formatted and used in scripts.
Get-Event
The Get-Event cmdlet gets the events in the event queue, which are notifications generated by the system or applications.
Get-EventLog
The Get-EventLog cmdlet gets the events in the event log, providing information about system, security, and application events.
Get-EventSubscriber
The Get-EventSubscriber cmdlet gets the event subscribers in the current session, allowing you to manage event handling.
Get-Help
The Get-Help cmdlet gets help about PowerShell cmdlets and concepts, providing detailed information and examples.
Get-History
The Get-History cmdlet gets the command history of the current session, allowing you to review and reuse previous commands.
Get-Host
The Get-Host cmdlet gets information about the current host program, such as PowerShell or ISE, providing details about the environment.
Get-HotFix
The Get-HotFix cmdlet gets the installed hotfixes on the computer, showing updates and patches applied to the system.
Get-Item
The Get-Item cmdlet gets an item at a specified location, such as a file, folder, or registry key.
Get-ItemProperty
The Get-ItemProperty cmdlet gets the properties of an item at a specified location, such as the attributes of a file or registry key.
Get-Job
The Get-Job cmdlet gets PowerShell background jobs in the current session, allowing you to manage and monitor asynchronous tasks.
Get-Location
The Get-Location cmdlet gets the current directory location, showing the path of the current working directory.
Get-Module
The Get-Module cmdlet gets the modules that are imported or available to the session, allowing you to manage and import modules.
Get-Process
The Get-Process cmdlet gets the processes that are running on the computer, providing information about CPU, memory usage, and more.
Get-Service
The Get-Service cmdlet gets the status of services on the computer, showing whether they are running, stopped, or paused.
Get-Variable
The Get-Variable cmdlet gets the PowerShell variables in the current session, allowing you to view and manage session data.
Get-WmiObject
The Get-WmiObject cmdlet gets instances of WMI classes or information about the available WMI classes, providing system management data.
H
Halt-VM
The Halt-VM cmdlet halts a virtual machine (VM) immediately, stopping all processes and services on the VM.
Help
The Help cmdlet displays help about PowerShell cmdlets and concepts, providing detailed information and examples.
Hide-ConsoleWindow
The Hide-ConsoleWindow cmdlet hides the console window of the current PowerShell session, allowing the script to run in the background.
Host-Prompt
The Host-Prompt cmdlet prompts the user for input in a PowerShell host, allowing interaction with the user during script execution.
Hyper-V-Configure
The Hyper-V-Configure cmdlet configures settings for a Hyper-V virtual machine, including network, storage, and memory options.
Hyper-V-Get
The Hyper-V-Get cmdlet gets information about a Hyper-V virtual machine, such as its status, configuration, and resource usage.
Hyper-V-Set
The Hyper-V-Set cmdlet sets properties for a Hyper-V virtual machine, allowing you to modify its configuration.
Hyper-V-Start
The Hyper-V-Start cmdlet starts a Hyper-V virtual machine, making it available for use.
Hyper-V-Stop
The Hyper-V-Stop cmdlet stops a Hyper-V virtual machine, shutting it down gracefully or forcefully.
Hyper-V-Suspend
The Hyper-V-Suspend cmdlet suspends a Hyper-V virtual machine, pausing its operation and preserving its state.
I
Import-Alias
The Import-Alias cmdlet imports an alias list from a file, allowing you to restore previously exported aliases.
Import-Clixml
The Import-Clixml cmdlet imports a Clixml file and creates corresponding objects in PowerShell, allowing you to work with serialized data.
Import-Csv
The Import-Csv cmdlet imports a CSV file and creates corresponding objects in PowerShell, making it easy to work with structured data.
Import-LocalizedData
The Import-LocalizedData cmdlet imports localized data from a .psd1 file, which is used for internationalization in PowerShell scripts.
Import-Module
The Import-Module cmdlet imports a PowerShell module into the current session, making its cmdlets, functions, and variables available.
Import-PSSession
The Import-PSSession cmdlet imports commands from another session and adds them to the current session, allowing you to work with remote commands locally.
Install-ADDSForest
The Install-ADDSForest cmdlet installs a new Active Directory forest, setting up the initial domain and configuration.
Install-Module
The Install-Module cmdlet installs a PowerShell module from an online repository or a local source, adding new cmdlets and functions to your environment.
Install-Package
The Install-Package cmdlet installs one or more software packages, managing dependencies and versioning.
Install-WindowsFeature
The Install-WindowsFeature cmdlet installs specified roles, role services, or features on a Windows server, helping you configure server functionality.
Invoke-Command
The Invoke-Command cmdlet runs commands on local and remote computers, providing a way to execute scripts or cmdlets on multiple machines.
Invoke-Expression
The Invoke-Expression cmdlet evaluates or runs a specified string as a command, allowing you to dynamically execute code.
Invoke-History
The Invoke-History cmdlet runs commands from the session history, enabling you to re-execute previous commands.
Invoke-RestMethod
The Invoke-RestMethod cmdlet sends an HTTP or HTTPS request to a RESTful web service, allowing you to interact with APIs and retrieve data.
Invoke-WebRequest
The Invoke-WebRequest cmdlet sends an HTTP or HTTPS request to a web page or web service, providing a way to download content or interact with web applications.
J
Join-ADDomain
The Join-ADDomain cmdlet joins a computer to an Active Directory domain, enabling centralized management and authentication.
Join-DnsClient
The Join-DnsClient cmdlet joins a DNS client to a specified DNS suffix, allowing the client to resolve domain names within that suffix.
Join-Object
The Join-Object cmdlet joins two objects based on a common property, creating a single object that contains the properties of both.
Join-Path
The Join-Path cmdlet combines a path and a child path into a single path, making it easier to work with file and directory structures.
Join-Session
The Join-Session cmdlet joins an existing PowerShell session, allowing the user to continue working in a session that was started earlier.
Join-SmbSession
The Join-SmbSession cmdlet joins an SMB session, allowing the user to access shared resources on a remote server.
Join-VMToADDomain
The Join-VMToADDomain cmdlet joins a virtual machine to an Active Directory domain, enabling domain-based authentication and management.
Join-WSManSession
The Join-WSManSession cmdlet joins a WSMan session, allowing remote management of computers using the WS-Management protocol.
K
Kill-Process
The Kill-Process cmdlet terminates a running process by its ID or name, immediately stopping the process and freeing up system resources.
Kill-Session
The Kill-Session cmdlet ends a PowerShell session, closing the connection and releasing resources associated with the session.
Kill-Task
The Kill-Task cmdlet terminates a running task, which can be useful for ending tasks that are unresponsive or consuming too many resources.
Kill-VM
The Kill-VM cmdlet forcefully stops a virtual machine, immediately halting its operation without saving its state.
Kill-VMProcess
The Kill-VMProcess cmdlet terminates a process running within a virtual machine, stopping a specific application or service within the VM.
L
Limit-EventLog
The Limit-EventLog cmdlet limits the size of an event log, ensuring that it does not grow beyond a specified size.
Lock-BitLocker
The Lock-BitLocker cmdlet locks a BitLocker volume, protecting it from unauthorized access.
Lock-File
The Lock-File cmdlet locks a file to prevent it from being written to or modified by other processes.
Lock-Service
The Lock-Service cmdlet locks a service to prevent changes to its configuration or status.
Log-Event
The Log-Event cmdlet logs a custom event to the event log, allowing you to record application-specific events.
Log-PSMessage
The Log-PSMessage cmdlet logs a message in the PowerShell session, useful for debugging or tracking script execution.
Log-WinEvent
The Log-WinEvent cmdlet logs an event in the Windows event log, providing a way to record important system or application events.
M
Measure-Command
The Measure-Command cmdlet measures the time it takes to run a script block, helping you evaluate the performance of your scripts.
Measure-Object
The Measure-Object cmdlet calculates the property values of objects, such as counting, summing, and finding the average of numerical properties.
Measure-VM
The Measure-VM cmdlet measures performance metrics for a virtual machine, helping you monitor and optimize VM performance.
Measure-VMReplication
The Measure-VMReplication cmdlet measures replication health for a virtual machine, providing insights into replication status and performance.
Measure-VMResourcePool
The Measure-VMResourcePool cmdlet measures resource usage for a VM resource pool, providing metrics on CPU, memory, and storage utilization.
Mount-DiskImage
The Mount-DiskImage cmdlet mounts a disk image (ISO, VHD, etc.) to the file system, making the contents of the image accessible.
Mount-WindowsImage
The Mount-WindowsImage cmdlet mounts a Windows image to a directory, allowing you to view and modify the image’s contents.
Move-Item
The Move-Item cmdlet moves an item from one location to another, such as moving a file from one directory to another.
Move-ItemProperty
The Move-ItemProperty cmdlet moves a property from one item to another, such as moving a registry value.
N
New-Alias
The New-Alias cmdlet creates a new alias for a cmdlet or command, allowing you to create shortcuts for frequently used commands.
New-Event
The New-Event cmdlet creates a new event, which can be used for event handling in scripts.
New-Item
The New-Item cmdlet creates a new item, such as a file, directory, or registry key, at the specified location.
New-JobTrigger
The New-JobTrigger cmdlet creates a new job trigger for a scheduled job, defining the conditions under which the job will run.
New-Module
The New-Module cmdlet creates a new module in PowerShell, allowing you to package and distribute cmdlets, functions, and variables.
New-Object
The New-Object cmdlet creates a new .NET Framework or COM object, enabling you to use .NET classes and COM objects in PowerShell.
New-PSDrive
The New-PSDrive cmdlet creates a new PowerShell drive, mapping a location in the file system, registry, or other data store to a drive letter.
New-PSSession
The New-PSSession cmdlet creates a new PowerShell session, which can be used to run commands on a local or remote computer.
New-Service
The New-Service cmdlet creates a new Windows service, allowing you to define and manage background services on a computer.
New-VM
The New-VM cmdlet creates a new virtual machine, allowing you to run an additional operating system in a virtualized environment.
New-VMCheckpoint
The New-VMCheckpoint cmdlet creates a new checkpoint for a virtual machine, allowing you to save the state of the VM at a specific point in time.
New-VMHardDiskDrive
The New-VMHardDiskDrive cmdlet creates a new virtual hard disk drive for a virtual machine, providing additional storage for the VM.
New-VMResourcePool
The New-VMResourcePool cmdlet creates a new resource pool for virtual machines, enabling you to manage resources such as CPU, memory, and storage.
New-VMSnapshot
The New-VMSnapshot cmdlet creates a new snapshot of a virtual machine, preserving the state of the VM for later use.
New-Variable
The New-Variable cmdlet creates a new variable in the current session, allowing you to store and retrieve data.
O
Open-EventLog
The Open-EventLog cmdlet opens an event log on a local or remote computer, making it possible to view and manage the event log entries.
Optimize-VHD
The Optimize-VHD cmdlet optimizes a virtual hard disk (VHD) by reducing its physical size and reclaiming unused space.
Optimize-Volume
The Optimize-Volume cmdlet optimizes a volume, which can include tasks like defragmenting the disk, trimming unused space, and consolidating free space.
Optimize-WindowsImage
The Optimize-WindowsImage cmdlet performs various optimization tasks on a Windows image, such as reducing its size or improving its performance.
Out-Default
The Out-Default cmdlet sends output to the default formatter and output cmdlet, which is typically the Out-Host cmdlet that displays the output in the console.
Out-File
The Out-File cmdlet sends output to a file. It is useful for saving the results of a command or script to a text file for later analysis.
Out-GridView
The Out-GridView cmdlet sends output to an interactive table in a separate window. This cmdlet is especially useful for visually inspecting large sets of data.
Out-Host
The Out-Host cmdlet sends output to the console window. It is the default output cmdlet and is typically used automatically at the end of a pipeline.
Out-Null
The Out-Null cmdlet deletes output instead of sending it down the pipeline or displaying it. It is useful when you want to suppress output in a script.
Out-Printer
The Out-Printer cmdlet sends output to a printer. This cmdlet can be used to print text or other command outputs directly to a printer.
Out-String
The Out-String cmdlet converts objects into a series of strings. It is useful for creating a string from object output for further manipulation or formatting.
P
Pause-VM
The Pause-VM cmdlet pauses a virtual machine, suspending its operation until it is resumed. This is useful for temporarily freeing up system resources without stopping the VM.
Ping-Host
The Ping-Host cmdlet sends an ICMP echo request to a remote host to test network connectivity. This cmdlet is a PowerShell wrapper for the traditional ping command.
Pop-Command
The Pop-Command cmdlet removes the command that was most recently pushed onto the command stack, returning control to the previous command context.
Pop-Location
The Pop-Location cmdlet changes the current location to the location most recently pushed onto the stack by the Push-Location cmdlet.
Protect-CmsMessage
The Protect-CmsMessage cmdlet encrypts content using the Cryptographic Message Syntax (CMS) format, ensuring that the message can only be decrypted by the intended recipient.
Publish-AzWebApp
The Publish-AzWebApp cmdlet publishes an Azure Web App, deploying the specified code or content to the Azure platform.
Publish-Module
The Publish-Module cmdlet publishes a module to a repository, making it available for others to install and use.
Publish-Script
The Publish-Script cmdlet publishes a script to a repository, allowing others to find and install the script using PowerShellGet.
Purge-EventLog
The Purge-EventLog cmdlet clears all entries from an event log on a local or remote computer, removing old or unnecessary log entries.
Push-Location
The Push-Location cmdlet adds the current location to the top of a stack and then changes the current location to a specified location.
Q
Query-CimInstance
The Query-CimInstance cmdlet retrieves management information from local and remote computers using the Common Information Model (CIM) or Windows Management Instrumentation (WMI).
Query-VM
The Query-VM cmdlet retrieves information about virtual machines, such as their status, configuration, and resource usage.
Quick-Check
The Quick-Check cmdlet performs a quick integrity check on a specified resource, such as a file system or database.
Quick-Restore
The Quick-Restore cmdlet quickly restores a resource, such as a file or virtual machine, to a previous state.
Quit-Process
The Quit-Process cmdlet stops a process by its ID or name, immediately terminating the process and freeing up system resources.
Quit-VM
The Quit-VM cmdlet stops a virtual machine forcefully, immediately terminating its operation without saving the state.
R
Read-Host
The Read-Host cmdlet reads a line of input from the console, allowing the user to enter information during script execution.
Receive-Job
The Receive-Job cmdlet gets the results of a PowerShell background job, retrieving output data from jobs running in the background.
Receive-PSSession
The Receive-PSSession cmdlet receives output from commands in a disconnected PowerShell session, allowing you to reconnect and retrieve data.
Remove-Item
The Remove-Item cmdlet deletes one or more items, such as files, directories, or registry keys.
Remove-ItemProperty
The Remove-ItemProperty cmdlet deletes a property from an item, such as removing a registry value.
Remove-Job
The Remove-Job cmdlet deletes a PowerShell background job, stopping the job if it is running and removing it from the job list.
Remove-Module
The Remove-Module cmdlet removes a module from the current session, unloading its cmdlets, functions, and variables.
Remove-PSBreakpoint
The Remove-PSBreakpoint cmdlet deletes breakpoints from the current session, removing them from the script or command.
Remove-PSSession
The Remove-PSSession cmdlet ends a PowerShell session, closing the connection to a remote computer and releasing resources.
Remove-Service
The Remove-Service cmdlet deletes a Windows service, removing it from the list of services on the computer.
Rename-Item
The Rename-Item cmdlet renames an item, such as a file or directory, changing its name while keeping its contents intact.
Rename-ItemProperty
The Rename-ItemProperty cmdlet renames a property of an item, such as changing the name of a registry value.
Restart-Computer
The Restart-Computer cmdlet restarts the operating system on a local or remote computer.
Restart-Service
The Restart-Service cmdlet stops and then starts a service, effectively restarting it.
Restore-Computer
The Restore-Computer cmdlet restores the computer to a previous state by using a system restore point.
Resume-Job
The Resume-Job cmdlet resumes a suspended PowerShell background job, allowing it to continue execution.
Resume-Service
The Resume-Service cmdlet resumes a paused service, allowing it to continue operation.
Resume-VM
The Resume-VM cmdlet resumes a paused virtual machine, restoring its operation from the paused state.
S
Save-Help
The Save-Help cmdlet downloads the latest help files for PowerShell modules and saves them to a specified directory.
Select-Object
The Select-Object cmdlet selects specified properties of an object or set of objects, allowing you to create new custom objects.
Select-String
The Select-String cmdlet searches for text and patterns in input strings and files, similar to the UNIX grep command.
Send-MailMessage
The Send-MailMessage cmdlet sends an email message using the Simple Mail Transfer Protocol (SMTP).
Set-Alias
The Set-Alias cmdlet creates or changes an alias for a cmdlet or command, providing a shortcut for longer command names.
Set-Content
The Set-Content cmdlet writes or replaces the content of an item, such as writing data to a file.
Set-Date
The Set-Date cmdlet sets the system date and time on the local computer.
Set-ExecutionPolicy
The Set-ExecutionPolicy cmdlet changes the user preference for the PowerShell script execution policy, determining which scripts are allowed to run.
Set-Item
The Set-Item cmdlet changes the value of an item at a specified location, such as setting a new value for a registry key.
Set-ItemProperty
The Set-ItemProperty cmdlet changes the value of a property of an item, such as setting a new value for a file attribute or registry key.
Set-Location
The Set-Location cmdlet changes the current working directory to a specified location, similar to the cd command in other shells.
Set-PSBreakpoint
The Set-PSBreakpoint cmdlet sets a breakpoint on a line, command, or variable in a script, allowing you to pause execution for debugging.
Set-Service
The Set-Service cmdlet changes the properties of a service on a local or remote computer, such as setting the startup type.
Set-Variable
The Set-Variable cmdlet creates or changes the value of a variable in the current session.
Start-Job
The Start-Job cmdlet starts a PowerShell background job, allowing commands or scripts to run asynchronously.
Start-Process
The Start-Process cmdlet starts one or more processes on the local computer, such as launching an application.
Start-Service
The Start-Service cmdlet starts a stopped service on a local or remote computer.
Start-Sleep
The Start-Sleep cmdlet suspends the activity in a script or session for the specified period of time.
Start-VM
The Start-VM cmdlet starts a virtual machine, making it operational and ready for use.
Stop-Computer
The Stop-Computer cmdlet shuts down, restarts, or logs off a computer.
Stop-Job
The Stop-Job cmdlet stops a running background job, terminating its execution.
Stop-Process
The Stop-Process cmdlet stops one or more running processes, terminating them immediately.
Stop-Service
The Stop-Service cmdlet stops a running service on a local or remote computer.
Stop-VM
The Stop-VM cmdlet stops a virtual machine, either gracefully or forcefully.
Suspend-Job
The Suspend-Job cmdlet suspends a running background job, pausing its execution.
Suspend-Service
The Suspend-Service cmdlet suspends a running service, pausing its operation.
Suspend-VM
The Suspend-VM cmdlet suspends a virtual machine, pausing its operation and preserving its state.
Sync-VM
The Sync-VM cmdlet synchronizes a virtual machine’s configuration, ensuring it matches the desired state.
T
Tee-Object
The Tee-Object cmdlet sends command output to the console and also stores it in a variable or file, enabling you to capture output while still displaying it.
Test-Connection
The Test-Connection cmdlet sends ICMP echo request packets (pings) to one or more remote computers and returns the response, testing network connectivity.
Test-Json
The Test-Json cmdlet validates whether a string is in a valid JSON format, ensuring that it can be parsed correctly.
Test-ModuleManifest
The Test-ModuleManifest cmdlet verifies the contents of a module manifest, ensuring that the specified files, functions, and dependencies are correct.
Test-NetConnection
The Test-NetConnection cmdlet displays diagnostic information for a connection, including ICMP, TCP, route tracing, and DNS name resolution information.
Test-Path
The Test-Path cmdlet determines whether all elements of a path exist, verifying the presence of files, directories, or registry keys.
Test-Process
The Test-Process cmdlet checks the status of one or more processes, determining whether they are running, stopped, or unresponsive.
Test-Service
The Test-Service cmdlet checks the status of one or more services on a local or remote computer, determining whether they are running, stopped, or paused.
Test-WSMan
The Test-WSMan cmdlet tests whether the WinRM service is running on a local or remote computer, determining whether it is ready for PowerShell remoting.
Trace-Command
The Trace-Command cmdlet configures and starts a trace of command execution, providing detailed information about how PowerShell processes commands and scripts.
Trim-Command
The Trim-Command cmdlet removes unwanted characters from the beginning and end of strings, cleaning up input or output data.
Try-Catch
The Try-Catch cmdlet provides error handling in PowerShell scripts, allowing you to catch and handle exceptions that occur during script execution.
U
Unblock-File
The Unblock-File cmdlet removes the Zone.Identifier data stream from files that were downloaded from the internet, allowing them to be executed without warnings.
Undo-Transaction
The Undo-Transaction cmdlet rolls back a transaction, undoing any changes that were made within the scope of the transaction.
Uninstall-Module
The Uninstall-Module cmdlet removes a PowerShell module from the local computer, effectively uninstalling the module and its associated cmdlets.
Uninstall-Package
The Uninstall-Package cmdlet uninstalls one or more software packages from the local computer, removing the application and its components.
Uninstall-WindowsFeature
The Uninstall-WindowsFeature cmdlet removes specified roles, role services, or features from a Windows server, reducing its functionality.
Unregister-Event
The Unregister-Event cmdlet cancels an event subscription, stopping the delivery of event notifications to the event subscriber.
Unregister-PSSessionConfiguration
The Unregister-PSSessionConfiguration cmdlet deletes a registered session configuration from the computer, preventing remote access through that configuration.
Update-Help
The Update-Help cmdlet downloads the latest help files for PowerShell modules and updates the help content on the local computer.
Update-Module
The Update-Module cmdlet installs the latest version of a module from an online repository or a local source, keeping the module up to date.
Update-ModuleManifest
The Update-ModuleManifest cmdlet updates the module manifest file, including updating the list of exported functions, cmdlets, and dependencies.
Update-TypeData
The Update-TypeData cmdlet updates the extended type data in the current session, refreshing the type data without restarting PowerShell.
Use-Transaction
The Use-Transaction cmdlet runs a script block within the context of a transaction, ensuring that all changes are committed or rolled back as a unit.
V
Validate-Pattern
The Validate-Pattern cmdlet specifies a regular expression that the parameter’s argument must match, ensuring that the input data is in the correct format.
Validate-Range
The Validate-Range cmdlet specifies a range of values that the parameter’s argument must fall within, ensuring that the input data is within acceptable limits.
Validate-Script
The Validate-Script cmdlet runs a script block to validate the parameter’s argument, allowing custom validation logic.
ValidateSet
The ValidateSet attribute specifies a set of valid values for the parameter’s argument, limiting input to a predefined list of options.
Verify-PSRemoting
The Verify-PSRemoting cmdlet checks the configuration of PowerShell remoting on the local or remote computer, ensuring that remoting is properly set up.
View-EventLog
The View-EventLog cmdlet displays entries from the event log, allowing you to inspect system, security, and application events.
View-Job
The View-Job cmdlet displays the status and results of PowerShell background jobs, allowing you to monitor and manage asynchronous tasks.
View-Module
The View-Module cmdlet displays information about the modules available in the current session, including the cmdlets and functions they contain.
View-VM
The View-VM cmdlet displays the status and configuration of virtual machines, providing information about their resource usage and operational state.
View-VMCheckpoint
The View-VMCheckpoint cmdlet displays details about checkpoints (snapshots) of virtual machines, allowing you to manage and restore VM states.
W
Wait-Event
The Wait-Event cmdlet waits for a specific event to occur before continuing execution, making it useful for event-driven scripting.
Wait-Job
The Wait-Job cmdlet waits for a background job to complete before continuing execution, allowing you to synchronize with long-running tasks.
Wait-Process
The Wait-Process cmdlet waits for one or more running processes to stop before continuing execution, ensuring that dependent processes have finished.
Watch-Command
The Watch-Command cmdlet continuously monitors a command’s output and refreshes the display, useful for observing changes in real-time.
Where-Object
The Where-Object cmdlet filters objects from the pipeline based on specified criteria, selecting only those that match the condition.
While-Loop
The While-Loop cmdlet executes a block of commands repeatedly as long as a specified condition evaluates to true, useful for loops in scripts.
Write-Debug
The Write-Debug cmdlet writes a debug message to the console, which is useful for debugging scripts when the debug output is enabled.
Write-Error
The Write-Error cmdlet writes an error message to the error stream, indicating that a problem occurred during script execution.
Write-Host
The Write-Host cmdlet writes customized output directly to the console, typically used for displaying messages to the user.
Write-Information
The Write-Information cmdlet writes an informational message to the information stream, which can be used for logging or tracing operations.
Write-Output
The Write-Output cmdlet writes output to the pipeline, sending data from a script or function to the next command in the pipeline.
Write-Progress
The Write-Progress cmdlet displays a progress bar in the console, indicating the status of a long-running operation.
Write-Verbose
The Write-Verbose cmdlet writes a verbose message to the verbose stream, providing detailed information about command execution.
Write-Warning
The Write-Warning cmdlet writes a warning message to the warning stream, indicating a potential issue that does not stop script execution.
X
XCopy-Item
The XCopy-Item cmdlet copies an item from one location to another, with additional options for handling special files or permissions.
XGet-Content
The XGet-Content cmdlet retrieves the content of a file or item, with enhanced support for large files and special encoding.
XMove-Item
The XMove-Item cmdlet moves an item from one location to another, providing extended options for overwriting and renaming.
XOut-String
The XOut-String cmdlet converts objects to strings, providing extended formatting options and multi-line handling.
XRemove-Item
The XRemove-Item cmdlet removes an item from a specified location, offering additional safety checks and confirmation prompts.
XSet-Content
The XSet-Content cmdlet writes or replaces the content of an item, supporting advanced formatting and content validation.
XTest-Path
The XTest-Path cmdlet checks whether a path exists, with added features for handling network paths and case sensitivity.
XWrite-Output
The XWrite-Output cmdlet writes output to the pipeline, with enhanced control over output formatting and stream handling.
Y
Yield-Command
The Yield-Command cmdlet pauses the execution of a script or command and returns control to the caller, allowing for cooperative multitasking.
Yield-Job
The Yield-Job cmdlet yields control of a running job, allowing other jobs to execute in parallel, improving job scheduling efficiency.
Yield-Process
The Yield-Process cmdlet temporarily halts a process and allows other processes to run, improving overall system responsiveness.
Yield-Result
The Yield-Result cmdlet returns a partial result from a function or script before continuing execution, enabling the caller to process data incrementally.
Z
Zip-Archive
The Zip-Archive cmdlet creates a compressed archive (ZIP) file from one or more files or directories, allowing for efficient storage and transfer.
Zip-Compress
The Zip-Compress cmdlet compresses a single file or stream of data, reducing its size for storage or transmission.
Zip-Content
The Zip-Content cmdlet compresses the contents of a file or directory into a ZIP file, allowing for easy distribution or backup.
Zip-Directory
The Zip-Directory cmdlet compresses an entire directory and its contents into a single ZIP file, making it easy to archive or share large folders.
Zip-File
The Zip-File cmdlet compresses an entire file into a ZIP archive, preserving its structure and attributes.
Zip-Item
The Zip-Item cmdlet adds one or more items to an existing ZIP file, updating the archive with new content.