PowerShellが従来のスクリプト言語と違う1つが、 標準に用意された全コマンドレットが動詞-名詞形式で構成されている事です。
そしてこの動詞には、推奨されている一覧があります。
必ずそれでないと動作しない! という訳ではありません。 しかし、 Moduleなどを読み込む際に、推奨一覧にない動詞を使っていると警告がでます。
PowerShellのベースとなる考えであり、習得者の多くが動詞から動作を判断しているので、気を付けるといいでしょう。
今回はそのご紹介。
推奨されている利用可能なVerb(動詞)一覧を探す
コマンド一発で取得できます。
PS> 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が利用可能か見るなら , カンマで区切ってコマンドレットの後ろに付けるだけです。
Get-Verb Ping, Invoke
利用可能でした!
Verb Group
---- -----
Ping Diagnostic
Invoke Lifecycle
利用できない場合は、$nullが返ってきます。
# これは利用可能一覧にないので $null となる Get-Verb hoge
Aliasをつけて利用しやすくするのはとてもいいのですが、せっかく作ったAdvancedコマンドレットはルールに載せておくと公開した時に親切ですね。