Windows PowerShell commands


        %                     Alias for ForEach-Object
        ?                     Alias for Where-Object
a
    Get-Acl                   Get permission settings for a file or registry key
    Set-Acl                   Set permissions
        Active Directory      Account, Computer, Group and User cmdlets
    Get-Alias           gal   Return alias names for Cmdlets
 Import-Alias          ipal   Import an alias list from a file
    New-Alias           nal   Create a new alias.
    Set-Alias           sal   Create or change an alias
 Compress-Archive             Create a new archive/zipped file [PS 5+]
   Expand-Archive             Extract files from an archive (zipped) file [PS 5+]
   Get-AuthenticodeSignature  Get the signature object associated with a file
   Set-AuthenticodeSignature  Place a signature in a .ps1 script or other file
b
       Backup-GPO             Backup group policy objects (GPOs)
       Begin                  Function BEGIN block
       BITS                   Background Intelligent Transfer Service cmdlets
       Break                  Exit a program loop
c
     Catch                    Handle a terminating error within a scriptblock
   Set-Location  cd/chdir/sl  Set the current working location
   Get-ChildItem   dir/ls/gci Get child items (contents of a folder or registry key)
     Clear-Host    clear/cls  Clear the screen
     Clear-Item         cli   Remove content from a variable or an alias
       Get-Command      gcm   Retrieve basic information about a command
   Measure-Command            Measure running time
     Trace-Command            Trace an expression or command
        Add-Computer          Add a computer to the domain
 Checkpoint-Computer          Create a system restore point (XP)
     Remove-Computer          Remove the local computer from a workgroup or domain
    Restart-Computer          Restart the operating system on a computer
    Restore-Computer          Restore the computer to a previous state
       Stop-Computer          Stop (shut down) a computer
Reset-ComputerMachinePassword Reset the machine account password for the computer
 Test-ComputerSecureChannel   Test and repair the secure channel to the domain
     Add-Content         ac   Add to the content of the item
     Get-Content cat/type/gc  Get content from item (specific location)
     Set-Content         sc   Set content in the item (specific location)
   Clear-Content        clc   Remove content from a file/item
         Continue             Skip just this iteration of a loop
     Get-Command        gcm   Get basic information about cmdlets
  Invoke-Command        icm   Run command
   Enable-ComputerRestore     Enable System Restore on a drive
   Disable-ComputerRestore    Disable System Restore on a drive
  Get-ComputerRestorePoint    Get the restore points on the local computer
 Test-Connection              Ping one or more computers
   ConvertFrom-CSV            Convert object properties (in CSV format) into CSV objects
   ConvertTo-CSV              Convert .NET Framework objects into CSV variable-length strings
   ConvertTo-Html             Convert the input into an HTML table
   ConvertTo-Xml              Convert the input into XML
   ConvertFrom-SecureString   Convert a secure string into an encrypted standard string
   ConvertTo-SecureString     Convert an encrypted standard string into a secure string
   Copy-Item     copy/cp/ci   Copy an item from a namespace location
   Export-Counter             Export Performance Counter data to log files
      Get-Counter             Get performance counter data
   Import-Counter             Import performance counter log files
   Get-Credential             Get a security credential (username/password)
   Get-Culture                Get region information (language and keyboard layout)
d
   Get-ChildItem   Dir/ls/gci Get child items (contents of a folder or registry key)
   Get-Date                   Get current date and time
   Set-Date                   Set system time on the host system
   Remove-Item  Del/erase/rd/rm/rmdir   Delete an item
   Compare-Object diff/compare   Compare the properties of objects
     Get-DnsClientCache       Retrieve the content of the local DNS client cache
   Clear-DnsClientCache       Clear the content of the DNS client cache
   Do                         Loop while a condition is True
     Get-DscConfiguration     Get the current config. of a node
     Get-DscLocalConfigurationManager   Get Local Config Manager settings
     Get-DscResource          Get Desired State Config. resources from a computer
     New-DSCCheckSum          Create checksum files for DSC docs/resources
   Start-DscConfiguration     Apply Desired State config to nodes
e
         End                  Function END block
     Get-Event                Get events in the PowerShell event queue
     New-Event                Create a new event
  Remove-Event                Delete events from the event queue
 Unregister-Event             Cancel an event subscription
    Wait-Event                Wait until a particular event is raised
   Clear-EventLog             Delete all entries from an event log
     Get-Eventlog             Get event log data (2003)
   Limit-EventLog             Limit the size of the event log
     New-Eventlog             Create a new event log and a new event source
  Remove-EventLog             Delete an event log
    Show-EventLog             Display an event log
   Write-EventLog             Write an event to an event log
     Get-WinEvent             Get event log data (Vista+)
   Get-EventSubscriber        Get event subscribers
Register-EngineEvent          Subscribe to PowerShell events
Register-ObjectEvent          Subscribe to .NET events
   Register-WmiEvent          Subscribe to a WMI event
   Get-ExecutionPolicy        Get the execution policy for the shell
   Set-ExecutionPolicy        Change the execution policy (user preference)
   Export-Alias         epal  Export an alias list to a file
   Export-Clixml              Produce a clixml representation of PowerShell objects
   Export-Console             Export console configuration to a file
   Export-Csv          epcsv  Export to Comma Separated Values (spreadsheet)
   Exit-PSSession       Exit  Exit PowerShell (or exit a script)
f
   -F operator                Format operator
   Unblock-File               Unblock files downloaded from the Internet
   ForEach-Object    foreach  Loop through each item in the pipeline ( % )
   ForEach                    Loop through each item in a collection
   ForEach method             Loop through each item in a collection
   For                        Loop through items that match a condition
   Format-Custom         fc   Format output using a customized view
   Format-List           fl   Format output as a list of properties, each on a new line
   Format-Table          ft   Format output as a table
   Format-Wide           fw   Format output as a table listing one property only
  Export-FormatData           Save formatting data from the current session 
     Get-FormatData           Get the formatting data in the current session
g
   Get-Item              gi   Get a file/registry object (or any other namespace object)
   Get-ChildItem   dir/ls/gci Get child items (contents of a folder or registry key)
    Backup-GPO                Backup group policy objects (GPOs)
   Restore-GPO                Restore one or all GPOs from a GPO backup
    Import-GPO                Import Group Policy settings into a specified GPO from a GPO backup
h
   Get-Help            help   Open the help file
     Add-History              Add entries to the session history
   Clear-History       clhy   Delete entries from the session history
     Get-History  history/h/ghy Get a listing of the session history
  Invoke-History     r/ihy    Invoke a previously executed Cmdlet
     Get-Host                 Get host information (PowerShell Version and Region)
   Clear-Host      clear/cls  Clear the screen
    Read-Host                 Read a line of input from the host console
   Write-Host                 Write customized output to the host/screen
     Get-HotFix               Get Installed hotfixes
i
   if                         Conditionally perform a command
   Import-Clixml              Import a clixml file and rebuild the PS object
   Import-Csv         ipcsv   Take values from a CSV list and send objects down the pipeline
   Invoke-Command             Run commands on local and remote computers
   Invoke-Expression    iex   Run a PowerShell expression
   Invoke-WebRequest          Get content from a web page
      Get-Item           gi   Get a file object or get a registry (or other namespace) object
   Invoke-Item           ii   Invoke an executable or open a file (START)
      New-Item   md/mkdir/ni  Create a new item in a namespace
   Remove-Item  rm/del/erase/rd/ri/rmdir   Remove an item
      Set-Item           si   Change the value of an item
    Clear-ItemProperty  clp   Remove the property value from a property
     Copy-ItemProperty  cpp   Copy a property along with it's value
      Get-ItemProperty   gp   Retrieve the properties of an object
     Move-ItemProperty   mp   Move a property from one location to another
      New-ItemProperty        Set a new property
   Remove-ItemProperty   rp   Remove a property and its value
   Rename-ItemProperty  rnp   Renames a property at its location
      Set-ItemProperty   sp   Set a property at the specified location to a specified value
j
       Get-Job          gjb   Get PowerShell background jobs that are running
   Receive-Job         rcjb   Get PowerShell background job results
    Remove-Job          rjb   Delete a PowerShell background job
     Start-Job         sajb   Start a PowerShell background job
      Stop-Job         spjb   Stop a PowerShell background job
      Wait-Job          wjb   Wait for a background job
   Job Trigger cmdlets        Get/Set Scheduled job triggers
k
   Stop-Process    kill/spps  Stop a running process
l
Update-List                   Add and remove items from a collection
   Get-Location    pwd / gl   Get and display the current location
   Pop-Location        popd   Set the current working location from the stack
  Push-Location       pushd   Push a location to the stack
   Set-Location  cd/chdir/sl  Set the current working location
m
  Send-MailMessage            Send an email message
   Add-Member                 Add a member to an instance of a PowerShell object
   Get-Member            gm   Enumerate the properties of an object
    Get-Module          gmo   Get the modules imported to the session
 Import-Module         ipmo   Add a module to the session
    New-Module          nmo   Create a new dynamic module (only in memory)
 Remove-Module          rmo   Remove a module from the current session
 Export-ModuleMember          Export specific module members
   Move-Item      mv/move/mi  Move an item from one location to another
o
  Compare-Object diff/compare Compare the properties of objects
    Group-Object       group  Group objects that contain the same value
  Measure-Object              Measure the properties of an object
      New-Object              Create a new .Net object
   Select-Object      select  Select properties of objects
     Sort-Object        sort  Sort objects by property value
    Where-Object              Filter the objects passed along the command pipeline
   Out-Default                Send output to default
   Out-File                   Send output to a file
   Out-GridView         ogv   Send output to an interactive table
   Out-Host              oh   Send output to the host
   Out-Null                   Send output to null
   Out-Printer           lp   Send the output to a printer
   Out-String                 Send objects to the host as strings
p
           Param              Script Parameters
           Pause              Pause and display the message "Press Enter to continue"
           Powershell         Launch a PowerShell session
   Convert-Path        cvpa   Convert a ps path to a provider path
      Join-Path               Combine a path and child-path
   Resolve-Path        rvpa   Resolves the wildcards in a path
     Split-Path               Return part of a path
      Test-Path               Return true if the path exists, otherwise return false
 Get-Pfxcertificate         Get pfx certificate information
    Pop-Location       popd   Set the current working location from the stack
   Push-Location      pushd   Push a location to the stack
         Process              Function PROCESS block
     Get-Process     ps/gps   Get a list of processes on a machine
   Debug-Process              Attach a debugger to a running process
   Start-Process  start/saps  Start one or more processes
    Stop-Process   kill/spps  Stop a running process
    Wait-Process              Wait for a process to stop
   Enable-PSBreakpoint  ebp   Enable a breakpoint in the current console
  Disable-PSBreakpoint  dbp   Disable a breakpoint in the current console
      Get-PSBreakpoint  gbp   Get the currently set breakpoints
      Set-PSBreakpoint  sbp   Set a breakpoint on a line, command, or variable
   Remove-PSBreakpoint  rbp   Delete breakpoints from the current console
      Get-PSDrive       gdr   Get drive information (DriveInfo)
      New-PSDrive   mount/ndr Create a mapped network drive.
   Remove-PSDrive       rdr   Remove a provider/drive from its location
      Get-PSProvider          Get information for the specified provider
      Set-PSdebug             Turn script debugging on or off
  Disable-PSRemoting          Disable remote session configuration on the local computer
   Enable-PSRemoting          Run PowerShell commands on remote computers
    Enter-PSSession  etsn     Start an interactive session with a remote computer
     Exit-PSSession  exsn     End an interactive session with a remote computer
   Export-PSSession  epsn     Import commands and save them in a PowerShell module
      Get-PSSession   gsn     Get the PSSessions in the current session
   Import-PSSession  ipsn     Import commands from another session
      New-PSSession   nsn     Create a persistent connection to a local or remote computer
   Remove-PSSession   rsn     Close PowerShell sessions
    Disable-PSSessionConfiguration  Disable session configurations on the local computer
     Enable-PSSessionConfiguration  Enable session configurations on the local computer
        Get-PSSessionConfiguration  Get the registered PS session configuration
   Register-PSSessionConfiguration  Create and register a new PS session configuration
        Set-PSSessionConfiguration  Change properties of a registered session configuration
 Unregister-PSSessionConfiguration  Delete registered PS session configuration
        New-PSSessionOption         Advanced options for a PSSession
   Add-PsSnapIn        asnp   Add snap-ins to the console
   Get-PsSnapin        gsnp   List PowerShell snap-ins on this computer
   Remove-PSSnapin     rsnp   Remove PowerShell snap-ins from the console
r
   Get-Random                 Get a random number
   Read-Host                  Read a line of input from the host console
   Remove-Item  rm/del/erase/rd/ri/rmdir   Remove an item
   Rename-Item      ren/rni   Change the name of an existing item
   Rename-ItemProperty        Rename a property of an item
   Return                     Exit the current scope, (function, script, or script block)
   Run/Call             &     Run a command (call operator)
s
   Scheduler cmdlets          Get/Set scheduled jobs
   Select-Object     select   Select properties of objects
   Select-XML                 Find text in an XML string or document
   Send-MailMessage           Send an email message
       Get-Service      gsv   Get a list of services
       New-Service            Create a new service
   Restart-Service            Stop and then restart a service
    Resume-Service            Resume a suspended service
       Set-Service            Change the start mode/properties of a service
     Start-Service     sasv   Start a stopped service
      Stop-Service     spsv   Stop a running service
   Suspend-Service            Suspend a running service
   Sort-Object         sort   Sort objects by property value
   Set-StrictMode             Enforce coding rules in expressions & scripts
   Start-Sleep        sleep   Suspend shell, script, or runspace activity
   Switch                     Multiple if statements
   ConvertFrom-StringData     Convert a here-string into a hash table
   Select-String              Search through strings or files for patterns
t
   Tee-Object           tee   Send input objects to two places
   New-Timespan               Create a timespan object
   Trace-Command              Trace an expression or command
   Get-Tracesource            Get components that are instrumented for tracing.
   Set-Tracesource            Trace a PowerShell component
     Start-Transaction        Start a new transaction 
  Complete-Transaction        Commit the transaction
       Get-Transaction        Get information about the active transaction
       Use-Transaction        Add a command or expression to the transaction
      Undo-Transaction        Roll back a transaction
   Start-Transcript           Start a transcript of a command shell session
    Stop-Transcript           Stop the transcription process
         Trap                 Handle a terminating error
         Try ... Catch        Handle a terminating error within a scriptblock
     Add-Type                 Add a .NET Framework type to a PowerShell session
   Update-TypeData            Update extended type configuration
u
   Get-Uiculture              Get the ui culture information
       Unblock-File           Unblock files downloaded from the Internet
   Get-Unique            gu   Get the unique items in a collection
    Update-Formatdata         Update and append format data files
    Update-Help               Download and install help files
    Update-Typedata           Update the current extended type configuration
v
   Clear-Variable       clv   Remove the value from a variable
     Get-Variable        gv   Get a PowerShell variable
     New-Variable        nv   Create a new variable
  Remove-Variable        rv   Remove a variable and its value
     Set-Variable    set/sv   Set a variable and a value
w
Checkpoint-WebApplicationMonitoring Create a checkpoint for an IIS web app
 Get-WebApplicationMonitoringStatus Get the monitoring status of web apps
 New-WebServiceProxy          Create a Web service proxy object
Invoke-WebRequest             Get content from a web page
   Where-Object      where/?  Filter input from the pipeline
   Where method               Filter objects from a collection
   While                      Loop while a condition is True
 Add-WindowsFeature           Install roles, role services, and features
 Get-WindowsFeature           Retrieve roles, role services, and features
 Remove-WindowsFeature        Remove roles, role services, and features
   Write-Debug                Write a debug message to the host display
   Write-Error                Write an object to the error pipeline
   Write-Host                 Display text on screen
   Write-Output   write/echo  Write an object to the pipeline
   Write-Progress             Display a progress bar
   Write-Verbose              Write a string to the host's verbose display
   Write-Warning              Write a string in reverse video to the display
    Set-WmiInstance           Create or update an instance of an existing WMI class
 Invoke-WmiMethod      iwmi   Call WMI methods
    Get-WmiObject      gwmi   Get WMI class information
 Remove-WmiObject      rwmi   Delete an instance of a WMI class
    Connect-WSMan             Connect to the WinRM service on a remote computer
 Disconnect-WSMan             Disconnect from the WinRM service on a remote computer
       Test-WSMan             Test if a computer is setup to receive remote commands
  Invoke-WSManAction          Invoke an action on a specified object
 Disable-WSManCredSSP         Disable Credential Security Service Provider (SSP) authentication
  Enable-WSManCredSSP         Enable Credential SSP authentication
     Get-WSManCredSSP         Get the Credential SSP configuration
   New-WSManInstance          Create a new instance of a management resource
   Get-WSManInstance          Display management information (XML or value)
   Set-WSManInstance          Modify the management information related to a resource
Remove-WSManInstance          Delete a management resource instance
   Set-WSManQuickConfig       Configure the local computer for remote management
   New-WSManSessionOption     Options for WSMan commands
z
   Zipfile                    Compress or Extract zip files
       #                      Comment / Remark
       . (source)             Run a command script in the current shell
       & (call)               Run a command, script or function
       %                      Alias for ForEach-Object
       --%                    Stop parsing input
       ?                      Alias for Where-Object
       $variable = "value"    Define a variable  also: ${n!a#me} = "value"
       $_                     The current pipeline object 
       @(...)                 Force an expression to be evaluated as an array

Slmgr to Change, Remove, or Extend Your Windows License

Windows activation is designed to be as foolproof as possible, so Microsoft’s graphical tools keep it simple. If you want to do something more advanced like remove a product key, force an online activation, or extend the activation timer, you’ll need Slmgr.vbs.
This command line tool is included with Windows, and provides options unavailable in the standard activation interface provided on the Update & Security > Activation screen in the Settings app.
First: Open an Administrator Command Prompt WindowTo use this tool, you’ll want to launch a Command Prompt with Administrator access. To do so on Windows 8 or 10, either right-click the Start button or press Windows+X. Click the “Command Prompt (Admin)” option in the menu that appears. On Windows 7, search the Start menu for “Command Prompt,” right-click it, and select “Run as Administrator.”
View Activation, License, and Expiration Date Information
To display very basic license and activation information about the current system, run the following command. This command tells you the edition of Windows, part of the product key so you can identify it, and whether the system is activated.
slmgr.vbs /dli
To display more detailed license information–including the activation ID, installation ID, and other details–run the following command:
slmgr.vbs /dlv

View the License Expiration Date

To display the expiration date of the current license, run the following command. This is only useful for Windows system activated from an organization’s KMS server, as retail licenses and multiple activation keys result in a perpetual license that won’t expire. If you haven’t provided a product key at all, it’ll give you an error message.
slmgr.vbs /xpr

Uninstall the Product Key

You can remove the product key from your current Windows system with Slmgr. After you run the below command and restart your computer, the Windows system won’t have a product key and will be in an unactivated, unlicensed state.
If you installed Windows from a retail license and would like to use that license on another computer, this allows you to remove the license. It could also be useful if you’re giving that computer away to someone else. However, most Windows licenses are tied to the computer they came with–unless you purchased a boxed copy.
To remove uninstall the current product key, run the following command and then restart your computer:
slmgr.vbs /upk
Windows also stores the product key in the registry, as it’s sometimes necessary for the key to be in the registry when setting up the computer. If you’ve uninstalled the product key, you should run the below command to ensure it’s removed from the registry as well. This will ensure people who use the computer in the future can’t grab the product key.
Running this command alone won’t uninstall your product key. It’ll remove it from the registry so programs can’t access it from there, but your Windows system will remain licensed unless you run the above command to actually uninstall the product key. This option is really designed to prevent the key from being stolen by malware, if malware running on the current system gains access to the registry.
slmgr.vbs /cpky

Set or Change the Product Key

You can use slmgr.vbs to enter a new product key. If the Windows system already has a product key, using the below command will silently replace the old product key with the one you provide.
Run the following command to replace the product key, replacing #####-#####-#####-#####-##### with the product key. The command will check the product key you enter to ensure it’s valid before using it. Microsoft advises you restart the computer after running this command.
You can also change your product key from the Activation screen in the Settings app, but this command lets you do it from the command line.
slmgr.vbs /ipk #####-#####-#####-#####-#####

Activate Windows Online

To force Windows to attempt an online activation, run the following command. If you’re using a retail edition of Windows, this will force Windows to attempt online activation with Microsoft’s servers. If the system is set up to use a KMS activation server, it will instead attempt activation with the KMS server on the local network. This command can be useful if Windows didn’t activate due to a connection or server problem and you want to force it to retry.
slmgr.vbs /ato

Activate Windows Offline

Slmgr also allows you to perform an offline activation. To get an installation ID for offline activation, run the following command:
slmgr.vbs /dti
You’ll now need to get a a confirmation ID you can use to activate the system over the phone. Call the Microsoft Product Activation Center, provide the installation ID you received above, and you’ll be given an activation ID if everything checks out. This allows you to activate Windows systems without Internet connections.
To enter the confirmation ID you’ve received for offline activation, run the following command. Replace “ACTIVATIONID” with the activation ID you’ve received.
slmgr.vbs /atp ACTIVATIONID
Once you’re done, you can use the slmgr.vbs /dli or slmgr.vbs /dlv commands to confirm you’re activated.
This can generally be done from the Activation screen in the Settings app if your PC isn’t activated–you don’t have to use the command if you’d rather use the graphical interface.

Extend the Activation Timer



Some Windows systems provide a limited time where you can use them as free trials before entering a product key. For example, Windows 7 offers a 30-day trial period before it begins complaining at you. To extend this trial period and reset it back to 30 days remaining, you can use the following command.As Microsoft’s documentation puts it, this command “resets the activation timers.”
This command can only be used several times, so you can’t indefinitely extend the trial. The number of time it can be used depends on the “rearm count,” which you can view using the slmgr.vbs /dlv command. It seems different on different versions of Windows–it was three times on Windows 7, and it seems to be five times on Windows Server 2008 R2.
This no longer seems to work on Windows 10, which is very lenient if you don’t provide it a product key anyway. This option still works on older versions of Windows and may continue to work on other editions of Windows, such as Windows Server, in the future.
slmgr.vbs /rearm

Slmgr.vbs Can Perform Actions on Remote Computers, Too

Slmgr normally performs the actions you specify on the current computer. However, you can also remotely administer computers on your network if you have access to them. For example, the first command below applies to the current computer, while the second one will be run on a remote computer. You’ll just need the computer’s name, username, and password.
slmgr.vbs /option
slmgr.vbs computername username password /option

The Slmgr.vbs command has other options, which are useful for dealing with KMS activation and token-based activation. 

Windows Command line

Commands marked (•) are Internal commands only available within the CMD shell.

All other commands (not marked with •) are external commands.
External commands may be used under the CMD shell, PowerShell, or directly from START-RUN

Active Directory

   ADmodcmd Active Directory Bulk Modify
   CSVDE    Import or Export Active Directory data 
   DSACLs   Active Directory ACLs
   DSAdd    Add items to active directory (user group computer) 
   DSGet    View items in active directory (user group computer)
   DSQuery  Search for items in active directory (user group computer)
   DSMod    Modify items in active directory (user group computer)
   DSMove   Move an Active directory Object
   DSRM     Remove items from Active Directory

Batch Files
   CALL     Call one batch program from another•
   CHOICE   Accept keyboard input to a batch file
   CLIP     Copy STDIN to the Windows clipboard
   CLS      Clear the screen•
   CMD      Start a new CMD shell
   COLOR    Change colors of the CMD window•
   DOSKEY   Edit command line, recall commands, and create macros
   ECHO     Display message on screen•
   ENDLOCAL End localisation of environment changes in a batch file•
   EVENTCREATE Add a message to the Windows event log
   EXIT     Quit the current script/routine and set an errorlevel•
   FOR /F   Loop command: against a set of files•
   FOR /F   Loop command: against the results of another command•
   FOR      Loop command: all options Files, Directory, List•
   GOTO     Direct a batch program to jump to a labelled line•
   IF       Conditionally perform a command•
   IFMEMBER Is the current user a member of a Workgroup
   LOGTIME  Log the date and time in a file
   MAPISEND Send email from the command line
   MORE     Display output, one screen at a time
   PAUSE    Suspend processing of a batch file and display a message•
   PROMPT   Change the command prompt•
   REM      Record comments (remarks) in a batch file•
   RUN      Start | RUN commands
   RUNAS    Execute a program under a different user account
   SET      Display, set, or remove session environment variables•
   SETLOCAL Control the visibility of environment variables•
   SETX     Set environment variables
   SORT     Sort input
   SHIFT    Shift the position of batch file parameters•
   SLEEP    Wait for x seconds
   START    Start a program, command or batch file•
   TIMEOUT  Delay processing of a batch file
   TITLE    Set the window title for a CMD.EXE session•
   WAITFOR  Wait for or send a signal
   WMIC     WMI Commands
   ::       Comment / Remark•

Disk Management
   BOOTCFG  Edit Windows boot settings
   BCDBOOT  Create or repair a system partition
   BCDEDIT  Manage Boot Configuration Data
   CONVERT  Convert a FAT drive to NTFS
   CHKDSK   Check Disk - check and repair disk problems
   CHKNTFS  Check the NTFS file system
   DEFRAG   Defragment hard drive
   DISKPART Disk Administration
   DISKSHADOW Volume Shadow Copy Service
   DriverQuery Display installed device drivers
   FORMAT   Format a disk
   FREEDISK Check free disk space (in bytes)
   LABEL    Edit a disk label
   MOUNTVOL Manage a volume mount point
   NTBACKUP Backup folders to tape
   SFC      System File Checker
   VOL      Display a disk label•

Files and Folders
   ASSOC    Change file extension associations•
   ASSOCIAT One step file association
   ATTRIB   Change file attributes
   BITSADMIN Background Intelligent Transfer Service
   CACLS    Change file permissions
   CD       Change Directory - move to a specific Folder•
   CIPHER   Encrypt or Decrypt files/folders
   COMP     Compare the contents of two files or sets of files
   COMPACT  Compress files or folders on an NTFS partition
   COMPRESS Compress individual files on an NTFS partition
   COPY     Copy one or more files to another location•
   CSCcmd   Client-side caching (Offline Files)
   DEL      Delete one or more files•
   DELTREE  Delete a folder and all subfolders
   DIR      Display a list of files and folders•
   ERASE    Delete one or more files•
   EXPAND   Uncompress files
   EXTRACT  Uncompress CAB files
   FC       Compare two files
   FIND     Search for a text string in a file
   FINDSTR  Search for strings in files
   FORFILES Batch process multiple files
   FSUTIL   File and Volume utilities
   FTP      File Transfer Protocol
   FTYPE    File extension file type associations•
   iCACLS   Change file and folder permissions
   MD       Create new folders•
   MOVE     Move files from one folder to another•
   MKLINK   Create a symbolic link (linkd)
   OPENFILES Query or display open files
   POPD     Return to a previous directory saved by PUSHD•
   PsFile   Show files opened remotely
   PUSHD    Save and then change the current directory•
   QGREP    Search file(s) for lines that match a given pattern
   RECOVER  Recover a damaged file from a defective disk
   REN      Rename a file or files•
   REPLACE  Replace or update one file with another
   RD       Delete folder(s)•
   RMTSHARE Share a folder or a printer
   ROBOCOPY Robust File and Folder Copy
   SHARE    List or edit a file share or print share
   SHORTCUT Create a windows shortcut (.LNK file)
   SUBINACL Edit file and folder Permissions, Ownership and Domain
   TAKEOWN  Take ownership of a file
   TOUCH    Change file timestamps
   TREE     Graphical display of folder structure
   TYPE     Display the contents of a text file•
   WHERE    Locate and display files in a directory tree
   WINDIFF  Compare the contents of two files or sets of files
   XCACLS   Change file and folder permissions
   XCOPY    Copy files and folders

Group Policy/Windows Installer
   DevCon   Device Manager Command Line Utility 
   GPRESULT Display Resultant Set of Policy information
   GPUPDATE Update Group Policy settings
   MSIEXEC  Microsoft Windows Installer
   PsInfo   List information about a system
   PsShutdown Shutdown or reboot a computer
   REGSVR32 Register or unregister a DLL
   SHUTDOWN Shutdown the computer
   SLMGR    Software Licensing Management (Vista/2008)
   WUAUCLT  Windows Update

Networking
   ARP      Address Resolution Protocol
   BROWSTAT Get domain, browser and PDC info
   DNSSTAT  DNS Statistics
   GETMAC   Display the Media Access Control (MAC) address
   IPCONFIG Configure IP
   NET      Manage network resources
   NETDOM   Domain Manager
   NETSH    Configure Network Interfaces, Windows Firewall & Remote access
   NBTSTAT  Display networking statistics (NetBIOS over TCP/IP)
   NETSTAT  Display networking statistics (TCP/IP)
   NSLOOKUP Name server lookup
   PATHPING Trace route plus network latency and packet loss
   PsPing   Measure network performance
   PING     Test a network connection
   ROUTE    Manipulate network routing tables
   TRACERT  Trace route to a remote host

Processes
   PATH     Display or set a search path for executable files•
   PsExec   Execute process remotely
   PsKill   Kill processes by name or process ID
   PsList   List detailed information about processes
   PsGetSid Display the SID of a computer or a user
   PsSuspend Suspend processes
   SCHTASKS Schedule a command to run at a specific time
   SYSMON   Monitor and log system activity to the Windows event log
   TASKLIST List running applications and services
   TASKKILL End a running process
   TSKILL   End a running process
   TLIST    Task list with full path

Printing
   MODE     Configure a system device
   PRINT    Print a text file
   PRINTBRM Print queue Backup/Recovery
   PRNCNFG  Display, configure or rename a printer
   PRNMNGR  Add, delete, list printers and printer connections
   RUNDLL32 Run a DLL command (add/remove print connections)

Registry
   REG      Registry: Read, Set, Export, Delete keys and values
   REGEDIT  Import or export registry settings
   REGINI   Change Registry Permissions

Remote Desktop
   CHANGE   Change Terminal Server Session properties
   Query Process    Display processes (TS/Remote Desktop)
   Query Session    Display all sessions (TS/Remote Desktop)
   Query TermServer List all servers (TS/Remote Desktop)
   Query User       Display user sessions (TS/Remote Desktop)
   MSTSC    Terminal Server Connection (Remote Desktop Protocol)
   RASDIAL  Manage RAS connections
   RASPHONE Manage RAS connections
   Reset Session - Delete a Remote Desktop Session
   TSDISCON Disconnect a Remote Desktop Session
   TSSHUTDN Remotely shut down or reboot a terminal server
   WINRM    Windows Remote Management
   WINRS    Windows Remote Shell

Services
   CASPOL   Code Access Security Policy Tool.
   PORTQRY  Display the status of ports and services
   PsService View and control services
   SC       Service Control

System Information
   NOW      Display the current Date and Time 
   DATE     Display or set the date•
   HELP     Online Help
   LOGMAN   Manage Performance Monitor logs
   MBSAcli  Baseline Security Analyzer
   MEM      Display memory usage
   MSINFO32 System Information
   NTRIGHTS Edit user account rights
   PERFMON  Performance Monitor
   PsLogList  Event log records
   SYSMON   Monitor and log system activity to the Windows event log
   SYSTEMINFO List system configuration
   TIME     Display or set the system time•
   TypePerf Write performance data to a log file
   VER      Display version information•
   VERIFY   Verify that files have been saved•
   WHOAMI   Output the current UserName and domain

User Administration
   ADDUSERS Add or list users to/from a CSV file
   CERTREQ  Request certificate from a certification authority
   CleanMgr Automated cleanup of Temp files, recycle bin
   CON2PRT  Connect or disconnect a Printer
   CMDKEY   Manage stored usernames/passwords
   DELPROF  Delete user profiles
   DIRUSE   Display disk usage
   LOGOFF   Log a user off
   MOVEUSER Move a user from one domain to another
   MSG      Send a message
   PERMS    Show permissions for a user
   POWERCFG Configure power settings
   PsLoggedOn Who's logged on (locally or via resource sharing)
   PsPasswd   Change account password
   SUBST    Associate a path with a drive letter