コマンドレット説明書【Get-Verb】の使い方 (PowerShell v5.1)

こんにちは。チェシャ男です。(-皿-)

今回は、Get-Verb について概要から使用例について簡単にご紹介します。

コマンドレットリファレンス」カテゴリの記事では省略している情報を参照したい場合に本記事をご覧ください。

はじめに

本記事は英語のリファレンス情報しかないコマンドレットについて「Get-Help」等の情報を参考に検証した結果を掲載しています。公式見解ではないことにご注意ください。

正式なヘルプを参照したい場合は、「Get-help Get-Verb -online」を実行し公式ヘルプをご覧ください。

また、本記事内の例は動作を確認していますが、動作を確約しているわけではありません。

Get-Verb の概要

Get-Verb は、Windows PowerShell で承認されている動詞を取得します。

[blogcard url=”https://cheshire-wara.com/powershell/ps-cmdlets/corefunction-other/get-verb/”]

基本構文

#パターン①
Get-Verb [[-Verb] <string[]>] [<CommonParameters>]

[] で囲まれたパラメーターは任意のオプションです。
{}で囲まれた箇所は要素を選択してください。
<>で囲まれた箇所はオブジェクトの型名を示しています。

動作の説明

Get-Verb はPowerShell のコマンドレットとして使用することが承認された動詞を取得します。

PowerShell では、「コマンドレット」や「関数名」の動詞-名詞形式がより実用的になることを目指しています。そのため母国語が英語ではなく普段英語を使わないユーザにとっても予測可能で使いやすくなることを推進しています。

承認されていない動詞を「関数名」や「コマンドレット名」に持つ関数・コマンドレットが定義されたモジュールを Import-Module コマンドレットでインポートすると警告メッセージが表示されます。警告メッセージなので処理自体は継続することができます。

各パラメータについて

-Verb <string[]>

動詞の名前または名前パターンを入力すると指定された動詞だけを取得します。ワイルドカードを使用することができます。

<CommonParameters>

このコマンドレットでは、

Verbose、Debug、ErrorAction、ErrorVariable、WarningAction、WarningVariable、OutBuffer、PipelineVariable、OutVariable

の各共通パラメーターを使用することができます。

入力値

なし

出力値

Selected.Microsoft.PowerShell.Commands.MemberDefinition

備考

Get-Verb で取得する「Microsoft.PowerShell.Commands.MemberDefinition」オブジェクトには動詞とグループのプロパティがあります。

Verb」プロパティには動詞名の文字列が含まれています。「Group」プロパティには動詞グループを含む文字列が含まれます。

PowerShell の各動詞は検索と比較を容易にするために設計され一般的な用途に紐づけてグルーピングされて割り当てられています。

グループ動詞の種類
Common(共通)「Add」など、ほぼすべてのコマンドレットに適用できる汎用アクションを定義します。
Communications(通信)「Connect」などの通信に適用されるアクションを定義します。
Data(データ)「Backup」などのデータ処理に適用されるアクションを定義します。
Diagnostic(診断)「Debug」などの診断に適用されるアクションを定義します。
Lifecycle(ライフサイクル)「Complete」のようなライフサイクルに適用されるアクションを定義します。
Security(セキュリティ)「Revoke」のようなセキュリティに適用されるアクションを定義します。
Other(その他)その他のタイプのアクションを定義します。

Tee-Object」や「Where-Object」など PowerShell のインストール時から用意されているコマンドレットの一部には承認されていない動詞が使用されている場合があります。しかし、これらのコマンドレットは歴史的な例外とみなされ、その動詞は「予約済み」として分類されます。

使用例

例1:承認された動詞を全て取得する

PS C:\> 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

この例では、すべての承認された動詞を取得しています。

例2:ワイルドカードで承認された動詞を取得する

PS C:\>  Get-Verb un*

Verb       Group
----       -----
Undo       Common
Unlock     Common
Unpublish  Data
Uninstall  Lifecycle
Unregister Lifecycle
Unblock    Security
Unprotect  Security

この例では、ワイルドカードを使用して “un”で始まるすべての承認動詞を取得しています。

例3:グループをフィルタして承認された動詞を取得する

PS C:\>Get-Verb | Where-Object {$_.Group -eq "Security"}Verb      Group
----      -----
Block     Security
Grant     Security
Protect   Security
Revoke    Security
Unblock   Security
Unprotect Security

この例では、セキュリティグループ内のすべての承認された動詞を取得しています。

例4:承認されていない動詞を確認する

PS C:\> Get-Command -module Hogemodules | Where-Object { (Get-Verb $_.Verb) -eq $null }
CommandType     Name                                          Version    Source
-----------     ----                                          -------    ------                          
Function        Create-Path                                   0.0        Hogemodules 
Function        Make-Name                                     0.0        Hogemodules 
Function        Make-Name                                     0.0        Hogemodules

この例では、承認されていない動詞を持つモジュール内のすべてのコマンドを見つけます。

自作のモジュールの中で承認されていない動詞を使用している場合は表示されます。

コメントを残す

メールアドレスが公開されることはありません。