Delen via


Get-ScriptAnalyzerRule

Hiermee haalt u de script analyzer-regels op de lokale computer op.

Syntax

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

Description

Hiermee haalt u de script analyzer-regels op de lokale computer op. U kunt regels selecteren op naam, ernst, bron of brontype, of zelfs bepaalde woorden in de beschrijving van de regel.

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 op de lokale computer ophalen

Get-ScriptAnalyzerRule

VOORBEELD 2: haalt alleen regels op met de ernst van de fout

Get-ScriptAnalyzerRule -Severity Error

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

In dit voorbeeld worden alleen de DSC-regels met de ernst van de fout uitgevoerd 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 is efficiënter dan het gebruik van Invoke-ScriptAnalyzerRule 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 genereren. 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 opgeslagen. 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

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

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. Als u regels wilt ophalen in submappen van het pad, gebruikt u de parameter RecurseCustomRulePath .

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[]
Aliases:CustomizedRulePath
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Name

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

Type:String[]
Position:Named
Default value:All rules
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-RecurseCustomRulePath

Zoekt recursief in de CustomRulePath-locatie om regels toe te voegen die zijn gedefinieerd in bestanden in submappen van het pad. Standaard worden Get-ScriptAnalyzerRule alleen de aangepaste regels in het opgegeven pad toegevoegd.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Severity

Hiermee haalt u alleen regels op met de opgegeven ernstwaarden. Geldige waarden zijn:

  • Informatie
  • Waarschuwing
  • Fout
Type:String[]
Position:Named
Default value:All rules
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

None

U kunt geen invoer doorspezen naar deze cmdlet.

Uitvoerwaarden

Microsoft.Windows.PowerShell.ScriptAnalyzer.Generic.RuleInfo

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