Continuing with this idea of standardization,
cmdlets and functions are supposed to follow a standard naming convention,
a Verb‑Noun. This makes it easy to identify a PowerShell command and
have a pretty good idea of what it's going to do.
There's nothing cryptic here like ack or set.
The verb comes from a list of standard .NET verbs. You can use to
Get‑Verb command in PowerShell to see that list.
But most of them are plain English and are things like Get, Set,
Stop, Start, Remove, nothing really too confusing.
The noun is the singular version,
the thing you are working with, Service, Process, Hotfix,
for example. Although you may see some commands with a prefix before the
noun. This is primarily done to prevent naming collisions and also help
you identify where the command comes from.
For example,
the Active Directory commands are like Get‑ADUser and
Get‑ADGroup. AD has been added to help you identify what
specific type of user or group.
Here are some good examples.
Now if you read English,
you can obviously tell what these commands are going to do.
One thing though, don't forget that dash. PowerShell people often talk about
Get‑Service and Stop‑Service, we never say Get dash Service.
The dash is implied.
I've had plenty of beginner students in classes who are applying what I'm
saying literally and then wonder why they get errors.
Remember that dash. Here's another example.
Got any idea what these commands are going to do?
And many times you can combine these commands in a PowerShell expression.
I find that if you can visualize or verbalize what it is that you want to do,
it really isn't that much of a stretch to find the right
commands. Get the Notepad process and then stop it.
Sure, you'll need to fine tune with parameters,
but at least you have a good idea about what commands you're going to need to use.