Get-ScriptAnalyzerRule
Ottiene le regole dell'analizzatore di script nel computer locale.
Sintassi
Get-ScriptAnalyzerRule
[[-Name] <string[]>]
[-CustomRulePath <string[]>]
[-RecurseCustomRulePath]
[-Severity <string[]>]
[<CommonParameters>]
Descrizione
Ottiene le regole dell'analizzatore di script nel computer locale. È possibile selezionare le regole in base a Nome, Gravità, Origine o SourceType o anche parole particolari nella descrizione della regola.
Usare questo cmdlet per creare raccolte di regole da includere ed escludere quando si esegue il cmdlet Invoke-ScriptAnalyzer
.
Per ottenere informazioni sulle regole, vedere il valore della proprietà Description di ogni regola.
Il modulo PSScriptAnalyzer testa il codice di PowerShell in uno script, un modulo o una risorsa DSC per determinare se soddisfa gli standard di procedure consigliate.
Esempio
ESEMPIO 1 - Ottenere tutte le regole dell'analizzatore di script nel computer locale
Get-ScriptAnalyzerRule
ESEMPIO 2: ottiene solo le regole con la gravità dell'errore
Get-ScriptAnalyzerRule -Severity Error
ESEMPIO 3- Eseguire solo le regole DSC con gravità dell'errore
Questo esempio esegue solo le regole DSC con gravità errore nei file nel modulo MyDSCModule.
$DSCError = Get-ScriptAnalyzerRule -Severity Error | Where-Object SourceName -eq PSDSC
$Path = "$home\Documents\WindowsPowerShell\Modules\MyDSCModule\*"
Invoke-ScriptAnalyzerRule -Path $Path -IncludeRule $DSCError -Recurse
L'uso del parametro
ESEMPIO 4 - Ottenere regole in base al nome e alla gravità
In questo esempio vengono recuperate le regole con "Parameter" o "Alias" nel nome che generano un errore o un avviso. È possibile usare questo set di regole per testare i parametri dello script o del modulo.
$TestParameters = Get-ScriptAnalyzerRule -Severity Error, Warning -Name *Parameter*, *Alias*
ESEMPIO 5 - Ottenere regole personalizzate
Questo esempio ottiene le regole standard e le regole nei moduli VeryStrictRules
Get-ScriptAnalyzerRule -CustomRulePath $home\Documents\WindowsPowerShell\Modules\*StrictRules -RecurseCustomRulePath
Parametri
-CustomRulePath
Per impostazione predefinita, PSScriptAnalyzer ottiene solo le regole standard specificate nel file Microsoft.Windows.PowerShell.ScriptAnalyzer.BuiltinRules.dll
nel modulo. Usare questo parametro per ottenere le regole personalizzate di Script Analyzer nel percorso specificato e nelle regole standard di Script Analyzer.
Immettere il percorso di un assembly o di un modulo .NET contenente le regole dell'analizzatore di script. È possibile immettere un solo valore, ma sono supportati i caratteri jolly. Per ottenere regole nelle sottodirectory del percorso, usare il parametro
È possibile creare regole personalizzate usando un assembly .NET o un modulo di PowerShell, ad esempio Community Analyzer Rules nel repository GitHub.
Tipo: | String[] |
Alias: | CustomizedRulePath |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | True |
-Name
Ottiene solo le regole con i nomi o i modelli di nome specificati. Sono supportati caratteri jolly. Se si elencano più nomi o modelli, ottiene tutte le regole che corrispondono a uno qualsiasi dei modelli di nome.
Tipo: | String[] |
Posizione: | Named |
Valore predefinito: | All rules |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | True |
-RecurseCustomRulePath
Cerca il percorso Get-ScriptAnalyzerRule
aggiunge solo le regole personalizzate nel percorso specificato.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | False |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Severity
Ottiene solo le regole con i valori di gravità specificati. I valori validi sono:
- Informazione
- Avvertimento
- Errore
Tipo: | String[] |
Posizione: | Named |
Valore predefinito: | All rules |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
Input
None
Non è possibile inviare tramite pipe l'input a questo cmdlet.
Output
Microsoft.Windows.PowerShell.ScriptAnalyzer.Generic.RuleInfo
L'oggetto RuleInfo