Udostępnij przez


Invoke-ScriptAnalyzer

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

Składnia

Path_SuppressedOnly (Domyślne)

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.

Invoke-ScriptAnalyzer -Path C:\ps-test\MyModule -Recurse -ExcludeRule PSAvoidUsingCmdletAliases, PSAvoidUsingInternalURLs

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.

Invoke-ScriptAnalyzer -Path D:\test_scripts\Test-Script.ps1 -CustomRulePath C:\CommunityAnalyzerRules -IncludeDefaultRules

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 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  ManageProf 14    The cmdlet 'Get-Widget' does not have a help comment.
                                                 iles.psm1
Invoke-ScriptAnalyzer -Path .\Get-Widgets.ps1 -SuppressedOnly
Rule Name                           Severity     File Name  Line  Justification
---------                           --------     ---------  ----  -------------
PSAvoidUsingCmdletAliases           Warning      ManageProf 21    Resolution in progress.
                                                 iles.psm1
PSUseSingularNouns                  Warning      ManageProf 14
                                                 iles.psm1

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
                                                                  because
                                                                  there i
                                                                  suppres
                                                                  Write-O
PSUseSingularNouns                  Warning                 1     The cmd
                                                                  noun sh

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 parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False
Aliasy:por

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:

String[]

Wartość domyślna:None
Wspiera dzikie karty:True
DontShow:False
Aliasy:CustomizedRulePath (Ścieżka dostosowanaReguła)

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:

String[]

Wartość domyślna:All rules are included.
Wspiera dzikie karty:True
DontShow:False

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

Path_SuppressedOnly
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość pozostałych argumentów:False
Path_IncludeSuppressed
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość pozostałych argumentów:False

-IncludeDefaultRules

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

Właściwości parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:

String[]

Wartość domyślna:All rules are included.
Wspiera dzikie karty:True
DontShow:False

Zbiory parametrów

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

-IncludeSuppressed

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

Właściwości parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

Path_IncludeSuppressed
Pozycja:Named
Obowiązkowy:True
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość pozostałych argumentów:False
ScriptDefinition_IncludeSuppressed
Pozycja:Named
Obowiązkowy:True
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:String
Wartość domyślna:None
Wspiera dzikie karty:True
DontShow:False
Aliasy:PSPath

Zbiory parametrów

Path_SuppressedOnly
Pozycja:0
Obowiązkowy:True
Wartość z pipeline:True
Wartość z pipeline według nazwy właściwości:True
Wartość pozostałych argumentów:False
Path_IncludeSuppressed
Pozycja:0
Obowiązkowy:True
Wartość z pipeline:True
Wartość z pipeline według nazwy właściwości:True
Wartość 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 parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

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

-ReportSummary

Napisz podsumowanie naruszeń znalezionych na hoście.

Właściwości parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:String
Wartość domyślna:None
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

ScriptDefinition_IncludeSuppressed
Pozycja:0
Obowiązkowy:True
Wartość z pipeline:True
Wartość z pipeline według nazwy właściwości:True
Wartość pozostałych argumentów:False
ScriptDefinition_SuppressedOnly
Pozycja:0
Obowiązkowy:True
Wartość z pipeline:True
Wartość z pipeline według nazwy właściwości:True
Wartość 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 parametrów

Typ:Object
Wartość domyślna:None
Wspiera dzikie karty:False
DontShow:False
Aliasy:Profil

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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.

Można określić jedną lub większą liczbę wartości ważności.

Parametr filtruje naruszenia reguł tylko po uruchomieniu wszystkich reguł. Aby efektywnie filtrować reguły, użyj Get-ScriptAnalyzerRule, aby wybrać reguły, które chcesz uruchomić.

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 parametrów

Typ:

String[]

Wartość domyślna:All rule violations
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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 parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False

Zbiory parametrów

Path_SuppressedOnly
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość pozostałych argumentów:False
ScriptDefinition_SuppressedOnly
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość pozostałych argumentów:False

-WhatIf

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

Właściwości parametrów

Typ:SwitchParameter
Wartość domyślna:False
Wspiera dzikie karty:False
DontShow:False
Aliasy:Wi

Zbiory parametrów

(All)
Pozycja:Named
Obowiązkowy:False
Wartość z pipeline:False
Wartość z pipeline według nazwy właściwości:False
Wartość 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.

Wejścia

None

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

Wyjść

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.