Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
poziom ważności: ostrzeżenie
Opis
Ta reguła wykrywa użycie funkcji w Write-Host funkcjach, które nie używają czasownika Show .
Write-Host jest zaprojektowany tak, aby generować wynik wyświetlany wyłącznie na nośniku, na przykład drukując kolorowy tekst lub pamiętując użytkowników do wprowadzania za pomocą Read-Host. Wykorzystuje tę metodę ToString() do zapisu wyników, a wyniki zależą od programu PowerShell.
Ponieważ Write-Host nie wysyła danych do pipeline, będziesz potrzebować Write-Output niejawnego wyjścia, aby przekazać dane w dół pipeline.
Unikaj używania Write-Host funkcji in, chyba że używają czasownika Show , który wyraźnie oznacza wyświetlanie informacji użytkownikowi. Ta reguła nie ma zastosowania do funkcji z czasownikiem Show.
Zamień Write-Host na Write-Output lub Write-Verbose w zależności od swoich intencji. Zastosowanie Write-Verbose do logowania i Write-Output zwracania obiektów.
Przykład
Niezgodne
function Get-MeaningOfLife
{
Write-Host 'Computing the answer to the ultimate question of life, the universe and everything'
Write-Host 42
}
Zgodne
Użyj Write-Verbose do obsługi komunikatów informacyjnych. Użytkownik może zdecydować, czy komunikat ma być wyświetlany, podając parametr Verbose.
function Get-MeaningOfLife {
[CmdletBinding()]Param() # makes it possible to support Verbose output
Write-Verbose 'Computing the answer to the ultimate question of life, the universe and everything'
Write-Output 42
}
function Show-Something {
Write-Host 'Show something on screen'
}