Get-ScriptAnalyzerRule
Hämtar skriptanalysreglerna på den lokala datorn.
Syntax
Get-ScriptAnalyzerRule
[[-Name] <string[]>]
[-CustomRulePath <string[]>]
[-RecurseCustomRulePath]
[-Severity <string[]>]
[<CommonParameters>]
Description
Hämtar skriptanalysreglerna på den lokala datorn. Du kan välja regler efter Namn, Allvarlighetsgrad, Källa eller SourceType, eller till och med särskilda ord i regelbeskrivningen.
Använd den här cmdleten för att skapa samlingar med regler som ska inkluderas och exkluderas när cmdleten Invoke-ScriptAnalyzer
körs.
Information om reglerna finns i värdet för egenskapen Beskrivning för varje regel.
PSScriptAnalyzer-modulen testar PowerShell-koden i ett skript, en modul eller en DSC-resurs för att avgöra om den uppfyller bästa praxis.
Exempel
EXEMPEL 1 – Hämta alla skriptanalysregler på den lokala datorn
Get-ScriptAnalyzerRule
EXEMPEL 2 – Hämtar endast regler med allvarlighetsgrad för fel
Get-ScriptAnalyzerRule -Severity Error
EXEMPEL 3 – Kör endast DSC-reglerna med allvarlighetsgraden Fel
Det här exemplet kör endast DSC-reglerna med allvarlighetsgraden Fel på filerna i modulen MyDSCModule .
$DSCError = Get-ScriptAnalyzerRule -Severity Error | Where-Object SourceName -eq PSDSC
$Path = "$home\Documents\WindowsPowerShell\Modules\MyDSCModule\*"
Invoke-ScriptAnalyzerRule -Path $Path -IncludeRule $DSCError -Recurse
Att använda parametern Invoke-ScriptAnalyzerRule
IncludeRule i är mer effektivt än att använda parametern Allvarlighetsgrad, som endast tillämpas när du har använt alla regler för att analysera alla modulfiler.
EXEMPEL 4 – Hämta regler efter namn och allvarlighetsgrad
Det här exemplet hämtar regler med "Parameter" eller "Alias" i namnet som genererar ett fel eller en varning. Du kan använda den här uppsättningen regler för att testa parametrarna för skriptet eller modulen.
$TestParameters = Get-ScriptAnalyzerRule -Severity Error, Warning -Name *Parameter*, *Alias*
EXEMPEL 5 – Hämta anpassade regler
Det här exemplet hämtar standardreglerna och reglerna i modulerna VeryStrictRules och ExtremelyStrictRules . Kommandot använder parametern RecurseCustomRulePath för att hämta regler som definierats i underkataloger för matchande sökvägar.
Get-ScriptAnalyzerRule -CustomRulePath $home\Documents\WindowsPowerShell\Modules\*StrictRules -RecurseCustomRulePath
Parametrar
-CustomRulePath
Som standard hämtar PSScriptAnalyzer endast de standardregler som anges i Microsoft.Windows.PowerShell.ScriptAnalyzer.BuiltinRules.dll
filen i modulen. Använd den här parametern för att hämta anpassade Script Analyzer-regler i den angivna sökvägen och standardreglerna för Script Analyzer.
Ange sökvägen till en .NET-sammansättning eller -modul som innehåller skriptanalysregler. Du kan bara ange ett värde, men jokertecken stöds. Om du vill hämta regler i underkataloger för sökvägen använder du parametern RecurseCustomRulePath .
Du kan skapa anpassade regler med hjälp av en .NET-sammansättning eller en PowerShell-modul, till exempel Community Analyzer-regler på GitHub-lagringsplatsen.
Typ: | String[] |
Alias: | CustomizedRulePath |
Position: | Named |
Standardvärde: | None |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-Name
Hämtar endast regler med de angivna namnen eller namnmönstren. Jokertecken stöds. Om du listar flera namn eller mönster hämtas alla regler som matchar något av namnmönstren.
Typ: | String[] |
Position: | Named |
Standardvärde: | All rules |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | True |
-RecurseCustomRulePath
Söker rekursivt på CustomRulePath-platsen för att lägga till regler som definierats i filer i underkataloger för sökvägen. Som standard Get-ScriptAnalyzerRule
lägger endast till anpassade regler i den angivna sökvägen.
Typ: | SwitchParameter |
Position: | Named |
Standardvärde: | False |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
-Severity
Hämtar endast regler med angivna allvarlighetsgradsvärden. Giltiga värden är:
- Information
- Varning
- Fel
Typ: | String[] |
Position: | Named |
Standardvärde: | All rules |
Obligatorisk: | False |
Godkänn pipeline-indata: | False |
Godkänn jokertecken: | False |
Indata
None
Du kan inte skicka indata till denna cmdlet.
Utdata
Microsoft.Windows.PowerShell.ScriptAnalyzer.Generic.RuleInfo
RuleInfo-objektet är ett anpassat objekt som skapats specifikt för Script Analyzer.