In order to prevent a mass usability nightmare with developers picking their own improvised cmdlet verbs, the Monad team, based on customer feedback, decided to enforce the use approved verbs.
The idea is to provide a more uniform and consistent interface to the end user. If a user needs to get something, he or she should know that what they are looking for is a get-something cmdlet. The user can then use the command discovery cmdlet (get-command get-*) to look for a getters and so forth…
With this change, if a non standard verb is to be used, the developer will be forced to add “__” to the beginning of the cmdlet name in order to make their cmdlet usable:
Example: in order to create a “play-nice” cmdlet where “play” is not an approved verb the developer will need to prepend the verb name with two underscore characters as follows “__play”.
Users can still get around this issue by simply aliasing the underscored cmdlet name as follows:
Set-Alias Play-Nice __Play-Nice
In order to ensure we have a complete list of valid verbs, we need to get your feedback on the list below to ensure we did not miss anything. Please speak now or forever hold your peace J
Ubiquitous Verbs |
Definition |
Common Parameters |
Obsoletes |
Pair |
Add |
Add, append or attach an element |
At, After, Before, Create, Filter, ID, Name, Value, Whatif |
append, attach, concatenate, insert |
Remove |
Clear |
Remove all the elements or content of a container |
|
flush, erase, release, unmark, unset, nullify |
|
Copy |
Copy a resource to another name or another container |
Acl, Overwrite, Recurse, Strict, Whatif |
duplicate, clone, replicate |
|
Get |
/object /content /children |
All, As, Compatible, Continuous, Count, Encoding, Exclude, Filter, Include, ID, Interval, Name, Path, Property, Recurse, Scope, Sortby, |
read, open, cat, type, dir, obtain, dump, acquire, examine, find, search |
Set |
Lock |
To protect from changes or deletion |
|
secure, fasten |
Unlock |
Move |
Move a resource |
|
transfer, name, migrate |
|
New |
create a new resource |
Description, ID, Name, Value |
create, generate, build, make, allocate |
Remove |
Remove |
Remove a resource from a container |
(Get), Drain, Erase, Force, Whatif |
delete, disconnect, detach, drop, purge, flush, erase, release |
Add/New |
Rename |
Give a resource a new name |
|
|
|
Set |
/object /content /children |
Passthru, |
write, reset, assign, configure |
Get |
Join |
to unite so as to form one unit |
|
combine, unite, link, 1connect, relate, associate |
split |
Split |
To become separated into parts, especially to undergo lengthwise division. Divided into portions, parts, or fragments |
|
Divide, separate, fragment, disunite |
join |
Unlock |
To undo the Lock operation. To give access to; open |
|
unsecure, unfasten |
Lock |
Data Verbs |
Definition |
|
Obsoletes |
Pair |
Backup |
|
|
|
Restore |
Compare |
Compare this resource with another one and produce a set of differences |
|
Diff |
|
Convert |
Change from one encoding to another or from one unit base to another (e.g. feet to meters) |
|
|
|
Export |
Make a copy of a set of resources using an interchange format |
(get), Add, As, AsScript, Delete, Description, FileName, Location, Strict, Whatif |
extract, backup |
Import |
Import |
Create a set of resources using an interchange format |
FileName, Location |
bulk load, load |
Export |
Initialize |
Prepare a resource for use. Assign a beginning value to something |
|
erase, renew, rebuild, reinitialize, setup |
|
Limit |
Limit the consumption of a resource or apply a constraint on a resource |
|
quota |
|
Merge |
Take multiple instances and create a single instance |
|
coalesce |
|
Restore |
Rollback state to a predefined snapshot/checkpoint |
|
|
Checkpoint |
Update |
update or refresh a resource from a source of truth |
|
refresh, renew, recalculate, reindex |
|
Mount |
Attach a named entity to a hierarchy at the pathname location. To set in position |
|
fix, organize, prepare |
Dismount |
Dismount |
To get off. To detach. |
|
detach, take-down |
Mount |
out |
direct to a port. Output something to a port. |
|
output. |
|
|
|
|
|
|
Lifecycle Verbs |
Definition |
|
Obsoletes |
Pair |
Disable |
Stop and/or configure something to be unavailable (e.g unable to not start again) |
|
|
Enable |
Enable |
Configure to be available (e.g. able to start) |
|
|
Disable |
Install |
Settle in an indicated place or condition (optionally initializing for use) |
|
setup, load |
Uninstall |
Restart |
Terminate existing activity and begin it again (with the same or checkpointed configuration) |
|
recycle |
|
Resume |
Begin an activity again after it was suspended |
|
|
Suspend |
Start |
Begin an activity |
|
launch, initiate, boot |
Stop |
Stop |
Discontinue or cease an activity |
|
End, kill, terminate, cancel |
Start |
Suspend |
Suspend an activity temporarily |
|
Pause |
Resume |
Uninstall |
|
|
|
Install |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Diagnostics verb |
Definition |
|
Obsoletes |
Pair |
Debug |
Interactively interact with a resource or activity for the purpose finding a flaw or better understanding of what is occurring. |
|
|
|
Measure |
calculate/identify resources consumed by a specified operation or retrieve statistics about a resource |
|
|
|
Ping |
Determine whether a resource is alive and responding to requests |
|
|
|
Resolve |
Map a shorthand name will be bound to a longname |
|
where, which |
|
Test |
Verify the operational validity or consistency of a resource |
|
diagnose, verify, analyze, salvage, verify |
|
Trace |
Trace activities performed by a specified operation |
|
|
|
|
|
|
|
|
Communications |
Definition |
|
Obsoletes |
Pair |
Send |
Convey by an intermediary to a destination |
|
put, broadcast, mail, fax, |
receive |
Receive |
Take or acquire from a source |
|
read, accept, peek, |
send |
Connect |
Associate subsequent activities with a resource |
|
|
disconnect |
Disconnect |
|
|
|
Connect |
write |
communicate or express. Display data. |
|
display, communicate |
read |
read |
To obtain (data) from a storage medium, such as a magnetic disk. |
|
input |
write |
|
|
|
|
|
|
|
|
|
|
Security |
Definition |
|
Obsoletes |
Pair |
Grant |
|
|
|
Revoke |
Revoke |
|
|
|
Grant |
Block |
prevent access to or usage of |
|
|
unblock |
Unblock |
allow access to or usage of |
|
|
block |
|
|
|
|
|
Other Verbs |
Definition |
|
Obsoletes |
Pair |
Use |
|
|
|
|
Wassim
[Edit: Monad has now been renamed to Windows PowerShell. This script or discussion may require slight adjustments before it applies directly to newer builds.]
0 comments