Sdílet prostřednictvím


Get-ScriptAnalyzerRule

Získá pravidla analyzátoru skriptů v místním počítači.

Syntaxe

Get-ScriptAnalyzerRule
   [[-Name] <string[]>]
   [-CustomRulePath <string[]>]
   [-RecurseCustomRulePath]
   [-Severity <string[]>]
   [<CommonParameters>]

Description

Získá pravidla analyzátoru skriptů v místním počítači. Pravidla můžete vybrat podle názvu, závažnosti, zdroje nebo zdrojového typu nebo dokonce určitých slov v popisu pravidla.

Pomocí této rutiny můžete vytvářet kolekce pravidel, která se mají zahrnout a vyloučit při spuštění rutiny Invoke-ScriptAnalyzer.

Pokud chcete získat informace o pravidlech, podívejte se na hodnotu vlastnosti Popis každého pravidla.

Modul PSScriptAnalyzer testuje kód PowerShellu ve skriptu, modulu nebo prostředku DSC a určí, jestli splňuje standardy osvědčených postupů.

Příklady

PŘÍKLAD 1 – Získání všech pravidel Analyzátoru skriptů v místním počítači

Get-ScriptAnalyzerRule

PŘÍKLAD 2 – Získá pouze pravidla se závažností chyby

Get-ScriptAnalyzerRule -Severity Error

PŘÍKLAD 3 – Spuštění pouze pravidel DSC se závažností chyby

Tento příklad spouští pouze pravidla DSC se závažností chyby u souborů v modulu MyDSCModule.

$DSCError = Get-ScriptAnalyzerRule -Severity Error | Where-Object SourceName -eq PSDSC
$Path = "$home\Documents\WindowsPowerShell\Modules\MyDSCModule\*"
Invoke-ScriptAnalyzerRule -Path $Path -IncludeRule $DSCError -Recurse

Použití parametru IncludeRuleInvoke-ScriptAnalyzerRule je efektivnější než použití parametru závažnosti , který se použije až po použití všech pravidel k analýze všech souborů modulů.

PŘÍKLAD 4 – Získání pravidel podle názvu a závažnosti

Tento příklad získá pravidla s parametrem nebo aliasem v názvu, který vygeneruje chybu nebo upozornění. Tuto sadu pravidel můžete použít k otestování parametrů skriptu nebo modulu.

$TestParameters = Get-ScriptAnalyzerRule -Severity Error, Warning -Name *Parameter*, *Alias*

PŘÍKLAD 5 – Získání vlastních pravidel

Tento příklad získá standardní pravidla a pravidla v modulech VeryStrictRules a ExtremelyStrictRules. Příkaz používá parametr RecurseCustomRulePath k získání pravidel definovaných v podadresářích odpovídajících cest.

Get-ScriptAnalyzerRule -CustomRulePath $home\Documents\WindowsPowerShell\Modules\*StrictRules -RecurseCustomRulePath

Parametry

-CustomRulePath

Ve výchozím nastavení získá PSScriptAnalyzer pouze standardní pravidla zadaná v souboru Microsoft.Windows.PowerShell.ScriptAnalyzer.BuiltinRules.dll v modulu. Tento parametr použijte k získání vlastních pravidel Analyzátoru skriptů v zadané cestě a standardních pravidlech Analyzátoru skriptů.

Zadejte cestu k sestavení nebo modulu .NET, který obsahuje pravidla Analyzátoru skriptů. Můžete zadat pouze jednu hodnotu, ale jsou podporovány zástupné dokumentace. Chcete-li získat pravidla v podadresářích cesty, použijte parametr RecurseCustomRulePath.

Vlastní pravidla můžete vytvořit pomocí sestavení .NET nebo modulu PowerShellu, jako je například Pravidla analyzátoru komunity v úložišti GitHub.

Typ:String[]
Aliasy:CustomizedRulePath
Position:Named
Default value:None
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:True

-Name

Získá pouze pravidla se zadanými názvy nebo vzory názvů. Podporují se zástupné kóty. Pokud vypíšete několik názvů nebo vzorů, získáte všechna pravidla, která odpovídají libovolnému vzoru názvů.

Typ:String[]
Position:Named
Default value:All rules
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:True

-RecurseCustomRulePath

Vyhledá CustomRulePath umístění rekurzivně a přidá pravidla definovaná v souborech v podadresářích cesty. Ve výchozím nastavení Get-ScriptAnalyzerRule přidá do zadané cesty pouze vlastní pravidla.

Typ:SwitchParameter
Position:Named
Default value:False
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

-Severity

Získá pouze pravidla se zadanými hodnotami závažnosti. Platné hodnoty jsou:

  • Informace
  • Varování
  • Chyba
Typ:String[]
Position:Named
Default value:All rules
Vyžadováno:False
Přijmout vstup kanálu:False
Přijmout zástupné znaky:False

Vstupy

None

Vstup do této rutiny nelze převést.

Výstupy

Microsoft.Windows.PowerShell.ScriptAnalyzer.Generic.RuleInfo

Objekt RuleInfo je vlastní objekt vytvořený speciálně pro Analyzátor skriptů.