Delen via


Get-ScriptAnalyzerRule

Hiermee haalt u de scriptanalyseregels op de lokale computer op.

Syntaxis

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

Description

Hiermee haalt u de scriptanalyseregels op de lokale computer op. U kunt regels selecteren op naam, ernst, bron of brontype, of zelfs bepaalde woorden in de regelbeschrijving.

Gebruik deze cmdlet om verzamelingen regels te maken die moeten worden opgenomen en uitgesloten bij het uitvoeren van de Invoke-ScriptAnalyzer-cmdlet.

Zie de waarde van de eigenschap Description van elke regel voor informatie over de regels.

De PSScriptAnalyzer-module test de PowerShell-code in een script, module of DSC-resource om te bepalen of deze voldoet aan de best practice-standaarden.

Voorbeelden

VOORBEELD 1: alle Script Analyzer-regels ophalen op de lokale computer

Get-ScriptAnalyzerRule

VOORBEELD 2: hiermee worden alleen regels met de ernst fout ophaalt

Get-ScriptAnalyzerRule -Severity Error

VOORBEELD 3: alleen de DSC-regels uitvoeren met de ernst fout

In dit voorbeeld worden alleen de DSC-regels uitgevoerd met de ernst Fout op de bestanden in de module MyDSCModule.

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

Het gebruik van de parameter IncludeRule van Invoke-ScriptAnalyzerRule is efficiënter dan het gebruik van de parameter Ernst, die alleen wordt toegepast nadat alle regels zijn gebruikt om alle modulebestanden te analyseren.

VOORBEELD 4: Regels ophalen op naam en ernst

In dit voorbeeld worden regels opgehaald met 'Parameter' of 'Alias' in de naam die een fout of waarschuwing genereert. U kunt deze set regels gebruiken om de parameters van uw script of module te testen.

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

VOORBEELD 5: Aangepaste regels ophalen

In dit voorbeeld worden de standaardregels en de regels in de modules VeryStrictRules en ExtremelyStrictRules. De opdracht gebruikt de parameter RecurseCustomRulePath om regels op te halen die zijn gedefinieerd in submappen van de overeenkomende paden.

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

Parameters

-CustomRulePath

PSScriptAnalyzer krijgt standaard alleen de standaardregels die zijn opgegeven in het Microsoft.Windows.PowerShell.ScriptAnalyzer.BuiltinRules.dll-bestand in de module. Gebruik deze parameter om de aangepaste Script Analyzer-regels op te halen in het opgegeven pad en de standaardScript Analyzer-regels.

Voer het pad in naar een .NET-assembly of -module die Script Analyzer-regels bevat. U kunt slechts één waarde invoeren, maar jokertekens worden ondersteund. Gebruik de parameter RecurseCustomRulePath om regels op te halen in submappen van het pad.

U kunt aangepaste regels maken met behulp van een .NET-assembly of een PowerShell-module, zoals de Community Analyzer-regels in de GitHub-opslagplaats.

Type:String[]
Aliassen:CustomizedRulePath
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-Name

Hiermee haalt u alleen regels op met de opgegeven namen of naampatronen. Jokertekens worden ondersteund. Als u meerdere namen of patronen vermeldt, worden alle regels weergegeven die overeenkomen met een van de naampatronen.

Type:String[]
Position:Named
Default value:All rules
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:True

-RecurseCustomRulePath

Hiermee wordt de CustomRulePath locatie recursief doorzocht om regels toe te voegen die zijn gedefinieerd in bestanden in submappen van het pad. Standaard voegt Get-ScriptAnalyzerRule alleen de aangepaste regels in het opgegeven pad toe.

Type:SwitchParameter
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Severity

Hiermee worden alleen regels opgehaald met de opgegeven ernstwaarden. Geldige waarden zijn:

  • Informatie
  • Waarschuwing
  • Fout
Type:String[]
Position:Named
Default value:All rules
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

None

U kunt geen invoer doorsluisen naar deze cmdlet.

Uitvoerwaarden

Microsoft.Windows.PowerShell.ScriptAnalyzer.Generic.RuleInfo

Het RuleInfo-object is een aangepast object dat speciaal is gemaakt voor Script Analyzer.