Home » PowerShell » PowerShell Commands

PowerShell Commands

PowerShell provides a wide range of commands to leverage PowerShell for various tasks. PowerShell scripting language is built on the .NET framework and designed for system administration, automation, and management tasks.

PowerShell commands cover a wide range of functionalities, including modules, automation tasks, manage session configuration, network drives, active directories, and so on…

In this article, we will explore a list of Windows PowerShell commands, cmdlet names, command alias, and description.

List of PowerShell Commands

Cmdlet NameCommand AliasCommand Description
Get-Helpman, helpRetrieves information about PowerShell commands.
Show-CommandshcmGenerates PowerShell commands in a graphical command window.
ForEach-Object%Executes an action on each object in a collection.
Where-Object?Filters objects from a collection based on their property values.
Add-ContentacAppends data to a file.
Get-ContentcatRetrieves the content from a file.
Clear-ContentclcRemoves the contents of an item without deleting the item itself.
Set-Locationcd, chdirChanges the current working location.
Get-LocationpwdRetrieves the current working location.
Get-ChildItemdir, lsLists files and directories in a file system drive.
New-ItemniGenerates a new item like a file or folder.
Add-PSSnapInasnpIntegrates one or more PowerShell snap-ins into the current session.
Get-AliasgalRetrieves the aliases for the current session.
New-AliasnalDefines a new alias for a command in the current session.
Compare-Objectcompare, diffCompares two sets of objects. One set is the reference, and the other is the difference.
Group-ObjectgroupDisplays objects in groups based on the value of the specific property.
Copy-Itemcopy, cp, cpiCopies the item to a different specified location.
Move-Itemmi, move, mvMoves an item to another location.
Invoke-CommandicmExecutes commands on local or remote computers.
Invoke-ExpressioniexInvokes commands or expressions locally.
Invoke-Historyihy, rExecutes commands from the session history.
Import-CSVipcsvGenerates table-like custom objects from the items in the CSV file.
Export-CSVepcsvConverts objects into comma-separated (CSV) strings and stores them in a CSV file.
Get-VariablegvRetrieves variables in the current console.
Set-VariablesetAssigns a new value to a variable or creates a variable if it doesn’t exist.
Get-ItemgiGets the item at the specified locations.
Get-ItemPropertygpGets the properties of the specified items.
Get-ItemPropertyValuegpvGets the value of one or more properties of a specified item.
Get-ServicegsvRetrieves the list of services on local or remote computers and displays it.
Set-ServicessvModifies the properties of a service.
Start-Service sasvStarts one or more stopped services.
Stop-ServicespsvStops one or more running services.
Restart-ServicersvStops and starts one or more services.
Suspend-ServicesuspSuspends one or more running services.
Invoke-FunctionifnInvokes a function that is defined in the current session or script.
Get-AclgaclRetrieves the security descriptor for a resource, such as a file or a registry key.
Set-AclsaclChanges the security descriptor for a specified resource, such as a file or registry key.
Register-ScheduledJobrsjobRegisters a new scheduled job.
Get-ScheduledJobgsjobGets scheduled jobs on the local computer.
Set-ScheduledJobssjobModifies the properties of a scheduled job.
UnRegister-ScheduledJobursjobDeletes a scheduled job.
Start-ScheduledJobsasjobStarts a scheduled job immediately.
Stop-ScheduledJobspsjobStops a running scheduled job.
Enable-ScheduledJobeasjobEnables a scheduled job.
Disable-ScheduledJobdisjobDisables a scheduled job.
Get-ScheduledJobOptiongsjoptGets the options that control the running of a scheduled job.
Set-ScheduledJobssjoptModifies the options that control the running of a scheduled job.
Get-JobTrigger gjtrGets the triggers that are defined for a scheduled job.
New-JobTriggernjtrCreates a new scheduled job trigger.
Add-JobTriggerajtrAdds a new trigger to a scheduled job.
Remove-JobTriggerrjtrRemoves a trigger from a scheduled job.
Set-JobTriggersjtrModifies a scheduled job trigger.
Get-JobgjbGets the background jobs that were started in the current session.
Receive-JobrcjbGets the results of background jobs.
Remove-JobrmjbDeletes a background job.
Start-JobstjbStarts a background job.
Stop-JobspjbStops a background job.
Wait-JobwjbSuppresses the command prompt until one or all jobs are complete.
PowerShell Commands in Windows


I hope the above article on PowerShell basic commands is helpful to you. PowerShell provides a wide range of commands to carry out various tasks.

Understanding the concepts and basics of PowerShell commands help you to enhance script efficiency and robustness.

You can find more topics about PowerShell Active Directory commands and PowerShell basics on the ShellGeek home page.