tech.guitarrapc.cóm

C#, PowerShell, Unity, Cloud, Serverless Technical Update and Features

PowerShell で 推奨される Verb (動詞) を探したい

PowerShell が従来のスクリプト言語 と違う一つが、 標準に用意された全コマンドレットが 動詞-名詞 形式で構成されている事です。 そしてこの動詞には、推奨されている一覧があります。 必ずそれでないと動作しない! という訳ではありません。 しかし、 Module などを読み込む際に、推奨一覧にない動詞を使っていると警告がでます。 PowerShell のベースとなる考えであり、習得者の多くが動詞から動作を判断しているので、気を付けるといいでしょう。 今回はそのご紹介。

推奨されている 利用可能な Verb (動詞) 一覧を探す

Cmdlet 一発です。
Get-Verb
これだけ!やった!! 一覧を見てみましょう。

Verb        Group         
----        -----         
Add         Common        
Clear       Common        
Close       Common        
Copy        Common        
Enter       Common        
Exit        Common        
Find        Common        
Format      Common        
Get         Common        
Hide        Common        
Join        Common        
Lock        Common        
Move        Common        
New         Common        
Open        Common        
Optimize    Common        
Pop         Common        
Push        Common        
Redo        Common        
Remove      Common        
Rename      Common        
Reset       Common        
Resize      Common        
Search      Common        
Select      Common        
Set         Common        
Show        Common        
Skip        Common        
Split       Common        
Step        Common        
Switch      Common        
Undo        Common        
Unlock      Common        
Watch       Common        
Backup      Data          
Checkpoint  Data          
Compare     Data          
Compress    Data          
Convert     Data          
ConvertFrom Data          
ConvertTo   Data          
Dismount    Data          
Edit        Data          
Expand      Data          
Export      Data          
Group       Data          
Import      Data          
Initialize  Data          
Limit       Data          
Merge       Data          
Mount       Data          
Out         Data          
Publish     Data          
Restore     Data          
Save        Data          
Sync        Data          
Unpublish   Data          
Update      Data          
Approve     Lifecycle     
Assert      Lifecycle     
Complete    Lifecycle     
Confirm     Lifecycle     
Deny        Lifecycle     
Disable     Lifecycle     
Enable      Lifecycle     
Install     Lifecycle     
Invoke      Lifecycle     
Register    Lifecycle     
Request     Lifecycle     
Restart     Lifecycle     
Resume      Lifecycle     
Start       Lifecycle     
Stop        Lifecycle     
Submit      Lifecycle     
Suspend     Lifecycle     
Uninstall   Lifecycle     
Unregister  Lifecycle     
Wait        Lifecycle     
Debug       Diagnostic    
Measure     Diagnostic    
Ping        Diagnostic    
Repair      Diagnostic    
Resolve     Diagnostic    
Test        Diagnostic    
Trace       Diagnostic    
Connect     Communications
Disconnect  Communications
Read        Communications
Receive     Communications
Send        Communications
Write       Communications
Block       Security      
Grant       Security      
Protect     Security      
Revoke      Security      
Unblock     Security      
Unprotect   Security      
Use         Other         

自分がつけようとしたVerb が利用可能かみたい

簡単です。 例えば Ping と Invokeという Verb が利用可能か見るなら , カンマ で区切ってCmdlet の後ろに付けるだけです。
Get-Verb Ping, Invoke
利用可能でした!
Verb   Group     
----   -----     
Ping   Diagnostic
Invoke Lifecycle 
利用できない場合は、$null が返ってきます。
# これは利用可能一覧にないので $null となる
Get-Verb hoge
Alias をつけて利用しやすくするのはトテモいいと思うのですが、せっかく作った Advanced Cmdlet はルールに載せておくと公開した時に親切ですね。