PowerShell contains a vast array of content in it’s help files.  The help files are exposed by the Get-Help cmdlet.  So, what’s really under the covers in the help system?

Finding Help by Keyword

PowerShell has a growing surface of things that it can cover.  WMI, COM, .NET, Exchange, Active Directory, SharePoint, and on and on.  How are we ever supposed to find the commands and information we need to use PowerShell effectively.  Get-Help gives us some options.

First off, Get-Help let’s us search all the help it has access to (see below on where the help comes from) by a keyword. 

Let’s start with an example.  I’m going to compete in the Beginner category of the Scripting Games for Event #1.  That event wants me to find out if an program being run is a private build or not.  Since the program is running, we need to deal with processes.  But what can PowerShell do with processes?

PS C:\Users\smurawski> Get-Help process Name Category Synopsis


Get-Process Cmdlet Gets the processes that are running on the local computer or a remote co… Stop-Process Cmdlet Stops one or more running processes. Wait-Process Cmdlet Waits for the processes to be stopped before accepting more input. Debug-Process Cmdlet Debugs one or more processes running on the local computer. Start-Process Cmdlet Starts one or more processes on the local computer.

So, that gives me a list of commands that refer to process in their help.  I've got a starting place now!



## Finding Help by Cmdlet (or Script or Function)




Now that I've narrowed down my search to a handful of commands, one really jumps out at me - Get-Process.
 



Checking out the help provided, I can see the various ways that I can call Get-Process (also known as the Parameter Sets).  I have a synopsis and description for the command, related commands, and finally some remarks.



### Help Levels




The remarks offer us several options to how we can access Get-Help to provide additional information.



The first option is Detailed.  Detailed help provides addition descriptions of each of the parameters, as well as examples of usage.  For example:
and
The second option is Full.  Full offers a further details on parameters like whether or not the value is required or can be filled with pipeline input.
### Other Options




Get-Help also allows you to do other interesting things like get a refresher on a particular parameter.
Sometimes you just need a quick example to get you going.