UseSingularNouns

重症度レベル:警告

デフォルト状態:有効

説明

このルールは、単数名詞ではなく複数名詞を使うコマンドレット名を検出します。

PowerShellのベストプラクティスでは、cmdletは複数形ではなく単数名詞を使用することを要求しています。 NounAllowListパラメータを使って特定の名詞をこのルールから除外したり、SuppressMessageAttributeを用いて個々の機能のルールを抑制したりできます。 違反が見つかった場合は、複数形の名詞を単数形に変えてください。

例えば次が挙げられます。

function Get-Elements {
    [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute('PSUseSingularNouns', 'Get-Elements')]
    Param()
}

Example

非準拠

function Get-Files
{
    ...
}

対応

function Get-File
{
    ...
}

ルールの設定

Rules = @{
    PSUseSingularNouns = @{
        Enable           = $true
        NounAllowList    = 'Data', 'Windows', 'Foos'
    }
}

Parameters

Enable

このパラメータは、ScriptAnalyzerがこのルールに対してコードをチェックするかどうかを制御します。 ブール値も受け入れます。 このルールを無効にするには、このパラメータを $falseに設定してください。 既定値は $true です。

NounAllowList

このパラメータは、どの命令名詞をこのルールから除外するかを指定します。 文字列配列を受け入れます。 DataもWindowsも一般的な偽陽性であり、デフォルトで除外されます。 デフォルト値は 'Data' と 'Windows'です。