Invoke-ScriptAnalyzer

Ocenia skrypt lub moduł na podstawie wybranych reguł najlepszych rozwiązań

Składnia

Path_SuppressedOnly (domyślnie)

Invoke-ScriptAnalyzer
    [-Path] <string>
    [-CustomRulePath <string[]>]
    [-RecurseCustomRulePath]
    [-IncludeDefaultRules]
    [-ExcludeRule <string[]>]
    [-IncludeRule <string[]>]
    [-Severity <string[]>]
    [-Recurse]
    [-SuppressedOnly]
    [-Fix]
    [-EnableExit]
    [-Settings <Object>]
    [-SaveDscDependency]
    [-ReportSummary]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Path_IncludeSuppressed

Invoke-ScriptAnalyzer
    [-Path] <string>
    -IncludeSuppressed
    [-CustomRulePath <string[]>]
    [-RecurseCustomRulePath]
    [-IncludeDefaultRules]
    [-ExcludeRule <string[]>]
    [-IncludeRule <string[]>]
    [-Severity <string[]>]
    [-Recurse]
    [-Fix]
    [-EnableExit]
    [-Settings <Object>]
    [-SaveDscDependency]
    [-ReportSummary]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ScriptDefinition_IncludeSuppressed

Invoke-ScriptAnalyzer
    [-ScriptDefinition] <string>
    -IncludeSuppressed
    [-CustomRulePath <string[]>]
    [-RecurseCustomRulePath]
    [-IncludeDefaultRules]
    [-ExcludeRule <string[]>]
    [-IncludeRule <string[]>]
    [-Severity <string[]>]
    [-Recurse]
    [-EnableExit]
    [-Settings <Object>]
    [-SaveDscDependency]
    [-ReportSummary]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ScriptDefinition_SuppressedOnly

Invoke-ScriptAnalyzer
    [-ScriptDefinition] <string>
    [-CustomRulePath <string[]>]
    [-RecurseCustomRulePath]
    [-IncludeDefaultRules]
    [-ExcludeRule <string[]>]
    [-IncludeRule <string[]>]
    [-Severity <string[]>]
    [-Recurse]
    [-SuppressedOnly]
    [-EnableExit]
    [-Settings <Object>]
    [-SaveDscDependency]
    [-ReportSummary]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Opis

Invoke-ScriptAnalyzer ocenia skrypty lub pliki modułów (.ps1, .psm1i .psd1) na podstawie kolekcji reguł najlepszych rozwiązań i zwraca obiekty reprezentujące naruszenia reguł. Zawiera również specjalne reguły do analizowania zasobów DSC.

Invoke-ScriptAnalyzer zawiera zestaw wbudowanych reguł. Domyślnie używa ona wszystkich reguł. Możesz użyć parametrów IncludeRule i ExcludeRule, aby wybrać żądane reguły. Możesz użyć polecenia cmdlet Get-ScriptAnalyzerRule, aby sprawdzić i wybrać reguły, które chcesz uwzględnić lub wykluczyć z oceny.

Możesz również użyć niestandardowych reguł pisanych w skryptach programu PowerShell lub kompilować je w zestawach przy użyciu języka C#. Reguły niestandardowe można również wybrać przy użyciu parametrów IncludeRule i ExcludeRule.

Regułę można również uwzględnić w analizie, ale pomijać dane wyjściowe tej reguły dla wybranych funkcji lub skryptów. Ta funkcja powinna być używana tylko w razie potrzeby. Aby uzyskać pominięte reguły, uruchom Invoke-ScriptAnalyzer z parametrem SuppressedOnly.

W przypadku użycia w systemach ciągłej integracji EnableExit zamyka powłokę z kodem zakończenia równym liczbie rekordów błędów.

Przykłady

PRZYKŁAD 1 — uruchamianie wszystkich reguł analizatora skryptów w skrycie

Invoke-ScriptAnalyzer -Path C:\Scripts\Get-LogData.ps1

PRZYKŁAD 2 — uruchamianie wszystkich reguł analizatora skryptów we wszystkich plikach w katalogu Modules

W tym przykładzie wszystkie reguły analizatora skryptów są uruchamiane na wszystkich plikach .ps1 i .psm1 w katalogu Modules użytkownika i jego podkatalogach.

Invoke-ScriptAnalyzer -Path $home\Documents\WindowsPowerShell\Modules -Recurse

PRZYKŁAD 3 — Uruchamianie pojedynczej reguły w module

W tym przykładzie jest uruchamiana tylko reguła PSAvoidUsingPositionalParameters dla plików w folderze modułu PSDiagnostics. Możesz użyć polecenia podobnego do tego, aby znaleźć wszystkie wystąpienia określonego naruszenia reguły.

Invoke-ScriptAnalyzer -Path C:\Windows\System32\WindowsPowerShell\v1.0\Modules\PSDiagnostics -IncludeRule PSAvoidUsingPositionalParameters

PRZYKŁAD 4 — Uruchamianie wszystkich reguł z wyjątkiem dwóch w modułach

W tym przykładzie są uruchamiane wszystkie reguły z wyjątkiem PSAvoidUsingCmdletAliases i PSAvoidUsingInternalURLs w plikach .ps1 i .psm1 w katalogu MyModules i w jego podkatalogach.

$invokeScriptAnalyzerSplat = @{
    Path = 'C:\ps-test\MyModule'
    Recurse = $true
    ExcludeRule = 'PSAvoidUsingCmdletAliases', 'PSAvoidUsingInternalURLs'
}
Invoke-ScriptAnalyzer @invokeScriptAnalyzerSplat

PRZYKŁAD 5 — Uruchamianie analizatora skryptów z regułami niestandardowymi

W tym przykładzie jest uruchamiany analizator skryptów na Test-Script.ps1 ze standardowymi regułami i regułami w ścieżce C:\CommunityAnalyzerRules.

$invokeScriptAnalyzerSplat = @{
    Path = 'D:\test_scripts\Test-Script.ps1'
    CustomRulePath = 'C:\CommunityAnalyzerRules'
    IncludeDefaultRules = $true
}
Invoke-ScriptAnalyzer @invokeScriptAnalyzerSplat

PRZYKŁAD 6 — uruchamiaj tylko reguły o ważności błędu i mają nazwę źródłową PSDSC

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

PRZYKŁAD 7 — pomijanie naruszeń reguł

W tym przykładzie pokazano, jak pominąć raportowanie naruszeń reguł w funkcji i jak odnajdywać naruszenia reguł, które są pomijane.

W przykładzie użyto atrybutu SuppressMessageAttribute, aby pominąć PSUseSingularNouns i PSAvoidUsingCmdletAliases reguły dla funkcji Get-Widgets w skry skrycie Get-Widgets.ps1. Za pomocą tego atrybutu można pominąć regułę dla modułu, skryptu, klasy, funkcji, parametru lub wiersza.

Pierwsze polecenie uruchamia narzędzie Script Analyzer w pliku skryptu zawierającym funkcję . Dane wyjściowe zgłasza naruszenie reguły. Mimo że więcej reguł jest naruszonych, żadna z pominiętych reguł nie jest zgłaszana.

function Get-Widgets
{
    [CmdletBinding()]
    [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("PSUseSingularNouns", "")]
    [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("PSAvoidUsingCmdletAliases", "",
        Justification="Resolution in progress.")]
    Param()

    dir $PSHOME
    ...
}

Invoke-ScriptAnalyzer -Path .\Get-Widgets.ps1
RuleName                  Severity     FileName            Line  Message
--------                  --------     --------            ----  -------
PSProvideCommentHelp      Information  ManageProfiles.psm1 14    The cmdlet 'Get-Widget' does not have a help comment.
Invoke-ScriptAnalyzer -Path .\Get-Widgets.ps1 -SuppressedOnly
Rule Name                   Severity  File Name           Line  Justification
---------                   --------  ---------           ----  -------------
PSAvoidUsingCmdletAliases   Warning   ManageProfiles.psm1 21    Resolution in progress.
PSUseSingularNouns          Warning   ManageProfiles.psm1 14

Drugie polecenie używa parametru SuppressedOnly do zgłaszania naruszeń reguł, które są pomijane pliku skryptu.

PRZYKŁAD 8 — Analizowanie plików skryptów przy użyciu definicji profilu

W tym przykładzie utworzymy profil analizatora skryptów i zapiszemy go w pliku ScriptAnalyzerProfile.txt w bieżącym katalogu. Uruchamiamy Invoke-ScriptAnalyzer w plikach modułów BitLocker. Wartość parametru profilu to ścieżka do profilu analizatora skryptów.

# In .\ScriptAnalyzerProfile.txt
@{
    Severity = @('Error', 'Warning')
    IncludeRules = 'PSAvoid*'
    ExcludeRules = '*WriteHost'
}

Invoke-ScriptAnalyzer -Path $PSHOME\Modules\BitLocker -Settings .\ScriptAnalyzerProfile.txt

Jeśli w poleceniu Invoke-ScriptAnalyzer dołączysz parametr powodujący konflikt, taki jak -Severity Error, polecenie cmdlet używa wartości profilu i ignoruje parametr .

PRZYKŁAD 9 — Analizowanie skryptu przechowywanego jako ciąg

W tym przykładzie użyto parametru ScriptDefinition do przeanalizowania funkcji w wierszu polecenia. Ciąg funkcji jest ujęta w cudzysłów.

Invoke-ScriptAnalyzer -ScriptDefinition "function Get-Widgets {Write-Host 'Hello'}"
RuleName               Severity     FileName   Line  Message
--------               --------     --------   ----  -------
PSAvoidUsingWriteHost  Warning                 1     Script definition uses Write-Host. Avoid using
                                                     Write-Host because it might not work in all hosts,
                                                     does not work when there is no host, and (prior
                                                     to PS 5.0) cannot be suppressed, captured, or
                                                     redirected. Instead, use Write-Output, Write-Verbose,
                                                     or Write-Information.
PSUseSingularNouns     Warning                 1     The cmdlet 'Get-Widgets' uses a plural noun. A
                                                     singular noun should be used instead.

Jeśli używasz parametru ScriptDefinition, właściwość FileName obiektu DiagnosticRecord jest $null.

Parametry

-Confirm

Prosi o potwierdzenie przed uruchomieniem cmdletu.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:por

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-CustomRulePath

Wprowadź ścieżkę do pliku, który definiuje reguły lub katalog zawierający pliki definiujące reguły. Obsługiwane są symbole wieloznaczne. Po określeniu customRulePath do analizy są używane tylko reguły niestandardowe znalezione w określonych ścieżkach. Jeśli Invoke-ScriptAnalyzer nie można odnaleźć reguł w programie , uruchamia standardowe reguły bez powiadomienia.

Aby dodać reguły zdefiniowane w podkatalogach ścieżki, użyj parametru RecurseCustomRulePath. Aby uwzględnić wbudowane reguły, dodaj parametr IncludeDefaultRules.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False
Aliasy:CustomizedRulePath (Ścieżka dostosowanaReguła)

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-EnableExit

Po zakończeniu analizy ten parametr kończy sesje programu PowerShell i zwraca kod zakończenia równy liczbie rekordów błędów. Może to być przydatne w potoku ciągłej integracji.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-ExcludeRule

Pomija określone reguły z testu analizatora skryptów. Obsługiwane są symbole wieloznaczne.

Wprowadź rozdzielaną przecinkami listę nazw reguł, zmienną zawierającą nazwy reguł lub polecenie, które pobiera nazwy reguł. Możesz również określić listę wykluczonych reguł w pliku profilu analizatora skryptów. Standardowe reguły i reguły można wykluczyć w niestandardowej ścieżce reguły.

Po wykluczeniu reguły reguła nie jest uruchamiana na żadnym z plików w ścieżce. Aby wykluczyć regułę dla określonego wiersza, parametru, funkcji, skryptu lub klasy, dostosuj parametr Path lub pomiń regułę. Aby uzyskać informacje na temat pomijania reguły, zobacz przykłady.

Jeśli reguła jest określona zarówno w ExcludeRule, jak i kolekcji IncludeRule, reguła zostanie wykluczona.

Właściwości parametru

Typ:

String[]

Domyślna wartość:All rules are included.
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Fix

Poprawki niektórych ostrzeżeń zawierających poprawkę w DiagnosticRecord.

W przypadku użycia FixInvoke-ScriptAnalyzer stosuje poprawki przed uruchomieniem analizy. Upewnij się, że masz kopię zapasową plików podczas korzystania z tego parametru. Próbuje zachować kodowanie pliku, ale nadal istnieją pewne przypadki, w których kodowanie może ulec zmianie.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

Path_SuppressedOnly
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
Path_IncludeSuppressed
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-IncludeDefaultRules

Wywołaj reguły domyślne wraz z regułami niestandardowymi.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-IncludeRule

Uruchamia tylko określone reguły w teście analizatora skryptów. Domyślnie program PSScriptAnalyzer uruchamia wszystkie reguły.

Wprowadź rozdzielaną przecinkami listę nazw reguł, zmienną zawierającą nazwy reguł lub polecenie, które pobiera nazwy reguł. Obsługiwane są symbole wieloznaczne. Nazwy reguł można również określić w pliku profilu analizatora skryptów.

W przypadku używania parametru CustomizedRulePath można użyć tego parametru do uwzględnienia standardowych reguł i reguł w niestandardowych ścieżkach reguł.

Jeśli reguła jest określona zarówno w ExcludeRule, jak i kolekcji IncludeRule, reguła zostanie wykluczona.

Parametr ważności ma pierwszeństwo przed IncludeRule. Jeśli na przykład ważność jest Error, nie można użyć IncludeRule w celu uwzględnienia reguły Warning.

Właściwości parametru

Typ:

String[]

Domyślna wartość:All rules are included.
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-IncludeSuppressed

Uwzględnij pominiętą diagnostykę w danych wyjściowych.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

Path_IncludeSuppressed
Position:Named
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
ScriptDefinition_IncludeSuppressed
Position:Named
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Path

Określa ścieżkę do skryptów lub modułu do przeanalizowania. Obsługiwane są symbole wieloznaczne.

Wprowadź ścieżkę do skryptu (.ps1) lub pliku modułu (.psm1) lub do katalogu zawierającego skrypty lub moduły. Jeśli katalog zawiera inne typy plików, są one ignorowane.

Aby przeanalizować pliki, które nie znajdują się w katalogu głównym określonej ścieżki, użyj symbolu wieloznakowego (C:\Modules\MyModule\*) lub parametru Recurse.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False
Aliasy:PSPath

Zestawy parametrów

Path_SuppressedOnly
Position:0
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
Path_IncludeSuppressed
Position:0
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-Recurse

Uruchamia analizator skryptów w plikach w katalogu Path i wszystkich podkatalogach rekursywnie.

Recurse ma zastosowanie tylko do wartości parametru Path. Aby wyszukać CustomRulePath cyklicznie, użyj parametru RecurseCustomRulePath.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-RecurseCustomRulePath

Dodaje reguły zdefiniowane w podkatalogach lokalizacji CustomRulePath. Domyślnie Invoke-ScriptAnalyzer używa tylko reguł niestandardowych zdefiniowanych w określonym pliku lub katalogu. Aby uwzględnić wbudowane reguły, użyj parametru IncludeDefaultRules.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-ReportSummary

Napisz podsumowanie naruszeń znalezionych na hoście.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-SaveDscDependency

Rozwiązywanie problemów z zależnościami zasobów DSC.

Po uruchomieniu Invoke-ScriptAnalyzer za pomocą tego parametru wyszukuje wystąpienia Import-DSCResource -ModuleName <somemodule>. Jeśli nie można odnaleźć <somemodule>, wyszukując $env:PSModulePath, Invoke-ScriptAnalyzer zwraca błąd analizy. Ten błąd jest spowodowany tym, że analizator programu PowerShell nie może odnaleźć symbolu dla <somemodule>.

Jeśli Invoke-ScriptAnalyzer znajdzie moduł w galerii programu PowerShell, pobierze brakujący moduł do ścieżki tymczasowej. Ścieżka tymczasowa jest następnie dodawana do $env:PSModulePath przez czas trwania skanowania. Lokalizację tymczasową można znaleźć w $LOCALAPPDATA/PSScriptAnalyzer/TempModuleDir.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-ScriptDefinition

Uruchamia analizę poleceń, funkcji lub wyrażeń w ciągu. Ta funkcja umożliwia analizowanie instrukcji, wyrażeń i funkcji niezależnie od kontekstu skryptu.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

ScriptDefinition_IncludeSuppressed
Position:0
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False
ScriptDefinition_SuppressedOnly
Position:0
Obowiązkowe:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-Settings

Ścieżka do pliku zawierającego profil zdefiniowany przez użytkownika lub obiekt tabeli skrótu zawierający ustawienia dla elementu ScriptAnalyzer.

Uruchamia Invoke-ScriptAnalyzer z parametrami i wartościami określonymi w pliku lub tabeli skrótu.

Jeśli ścieżka lub zawartość pliku lub tabeli skrótu jest nieprawidłowa, jest ignorowana. Parametry i wartości w profilu mają pierwszeństwo przed tym samym parametrem i wartościami określonymi w wierszu polecenia.

Plik profilu analizatora skryptów jest plikiem tekstowym zawierającym tabelę skrótów z co najmniej jednym z następujących kluczy:

  • CustomRulePath
  • Reguły wykluczania
  • IncludeDefaultRules
  • Reguły dołączania
  • RecurseCustomRulePath
  • Reguły
  • Ciężkość

Klucze i wartości w profilu są interpretowane tak, jakby były standardowymi parametrami i wartościami Invoke-ScriptAnalyzer, podobnie jak w przypadku splattingu. Aby uzyskać więcej informacji, zobacz about_Splatting.

Właściwości parametru

Typ:Object
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Profil

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Severity

Po uruchomieniu analizatora skryptów ze wszystkimi regułami ten parametr wybiera naruszenia reguły z określoną ważnością.

Prawidłowe wartości to:

  • Błąd
  • Ostrzeżenie
  • Informacja
  • ParseError

Możesz określić jedną lub więcej wartości nasilenia.

Parametr filtruje wyjście naruszenia reguł dopiero po uruchomieniu wszystkich reguł. Nie filtruje, które reguły są uruchamiane. Aby efektywnie filtrować reguły, użyj Get-ScriptAnalyzerRule, aby wybrać reguły, które chcesz uruchomić.

Właściwości parametru

Typ:

String[]

Domyślna wartość:All rule violations
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-SuppressedOnly

Zwraca naruszenia tylko dla reguł, które są pomijane.

Zwraca obiekt SuppressedRecord (Microsoft.Windows.PowerShell.ScriptAnalyzer.Generic.SuppressedRecord).

Aby pominąć regułę, użyj SuppressMessageAttribute. Aby uzyskać pomoc, zobacz przykłady.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

Path_SuppressedOnly
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False
ScriptDefinition_SuppressedOnly
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-WhatIf

Pokazuje, co się stanie, jeśli polecenie cmdlet zostanie uruchomione. Cmdlet nie jest uruchomiony.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Wi

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

None

Nie można przekazać danych wejściowych potoku do tego polecenia cmdlet.

Dane wyjściowe

Microsoft.Windows.PowerShell.ScriptAnalyzer.Generic.DiagnosticRecord

Domyślnie Invoke-ScriptAnalyzer zwraca jeden obiekt DiagnosticRecord dla każdego naruszenia reguły.

Microsoft.Windows.PowerShell.ScriptAnalyzer.Generic.SuppressedRecord

Jeśli używasz parametru SuppressedOnly, Invoke-ScriptAnalyzer zamiast tego zwraca obiekty SuppressedRecord.