Get-HotFix
Pobiera poprawki zainstalowane na komputerach lokalnych lub zdalnych.
Składnia
Get-HotFix
[[-Id] <String[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential>]
[<CommonParameters>]
Get-HotFix
[-Description <String[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential>]
[<CommonParameters>]
Opis
To polecenie cmdlet jest dostępne tylko na platformie Windows.
Polecenie Get-Hotfix
cmdlet używa klasy Win32_QuickFixEngineering WMI do wyświetlania listy poprawek zainstalowanych na komputerze lokalnym lub określonych komputerach zdalnych.
Przykłady
Przykład 1: Pobieranie wszystkich poprawek na komputerze lokalnym
Polecenie Get-Hotfix
cmdlet pobiera wszystkie poprawki zainstalowane na komputerze lokalnym.
Get-HotFix
Source Description HotFixID InstalledBy InstalledOn
------ ----------- -------- ----------- -----------
Server01 Update KB4495590 NT AUTHORITY\SYSTEM 5/16/2019 00:00:00
Server01 Security Update KB4470788 NT AUTHORITY\SYSTEM 1/22/2019 00:00:00
Server01 Update KB4480056 NT AUTHORITY\SYSTEM 1/24/2019 00:00:00
Przykład 2. Pobieranie poprawek z wielu komputerów filtrowanych według ciągu
Polecenie Get-Hotfix
używa parametrów do pobierania poprawek zainstalowanych na komputerach zdalnych. Wyniki są filtrowane według określonego ciągu opisu.
Get-HotFix -Description Security* -ComputerName Server01, Server02 -Credential Domain01\admin01
Get-Hotfix
filtruje dane wyjściowe za pomocą parametru Description i ciągu Zabezpieczenia zawierające symbol wieloznaczny gwiazdki (*
). Parametr ComputerName zawiera rozdzielony przecinkami ciąg nazw komputerów zdalnych. Parametr Credential określa konto użytkownika, które ma uprawnienia dostępu do komputerów zdalnych i uruchamia polecenia.
Przykład 3: Sprawdzanie, czy aktualizacja jest zainstalowana i czy zapisuje nazwy komputerów w pliku
Polecenia w tym przykładzie sprawdzają, czy zainstalowano określoną aktualizację. Jeśli aktualizacja nie jest zainstalowana, nazwa komputera jest zapisywana w pliku tekstowym.
$A = Get-Content -Path ./Servers.txt
$A | ForEach-Object { if (!(Get-HotFix -Id KB957095 -ComputerName $_))
{ Add-Content $_ -Path ./Missing-KB957095.txt }}
Zmienna $A
zawiera nazwy komputerów uzyskane z Get-Content
pliku tekstowego. Obiekty w programie $A
są wysyłane w dół potoku do elementu ForEach-Object
. Instrukcja if
używa Get-Hotfix
polecenia cmdlet z parametrem Id i określonym numerem identyfikatora dla każdej nazwy komputera. Jeśli na komputerze nie zainstalowano określonego identyfikatora poprawki, Add-Content
polecenie cmdlet zapisuje nazwę komputera w pliku.
Przykład 4. Pobieranie najnowszej poprawki na komputerze lokalnym
Ten przykład pobiera najnowszą poprawkę zainstalowaną na komputerze.
(Get-HotFix | Sort-Object -Property InstalledOn)[-1]
Get-Hotfix
wysyła obiekty w dół potoku Sort-Object
do polecenia cmdlet. Sort-Object
sortuje obiekty według kolejności rosnącej i używa parametru Property do oceny każdej daty InstalledOn . Notacja [-1]
tablicy wybiera najnowszą zainstalowaną poprawkę.
Parametry
-ComputerName
Określa komputer zdalny. Wpisz nazwę NetBIOS, adres IP (Internet Protocol) lub w pełni kwalifikowaną nazwę domeny (FQDN) komputera zdalnego.
Jeśli parametr ComputerName nie zostanie określony, Get-Hotfix
zostanie uruchomiony na komputerze lokalnym.
Parametr ComputerName nie polega na komunikacji wirtualnej Windows PowerShell. Jeśli komputer nie jest skonfigurowany do uruchamiania poleceń zdalnych, użyj parametru ComputerName .
Type: | String[] |
Aliases: | CN, __Server, IPAddress |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Credential
Określa konto użytkownika, które ma uprawnienia dostępu do komputera i uruchamiania poleceń. Wartość domyślna to bieżący użytkownik
Wpisz nazwę użytkownika, taką jak User01 lub Domain01\User01, lub wprowadź obiekt PSCredential wygenerowany przez Get-Credential
polecenie cmdlet. Jeśli wpiszesz nazwę użytkownika, zostanie wyświetlony monit o wprowadzenie hasła.
Poświadczenia są przechowywane w obiekcie PSCredential , a hasło jest przechowywane jako secureString.
Uwaga
Aby uzyskać więcej informacji na temat ochrony danych secureString , zobacz Jak bezpieczny jest securestring?.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Get-HotFix
używa parametru Opis do określania typów poprawek. Dozwolone są symbole wieloznaczne.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Id
Filtruje wyniki pod kątem Get-HotFix
określonych identyfikatorów poprawek. Symbole wieloznaczne nie są akceptowane.
Type: | String[] |
Aliases: | HFID |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Dane wejściowe
String
Do tego polecenia cmdlet można przekazać potok ciągu zawierającego nazwę komputera.
Dane wyjściowe
To polecenie cmdlet zwraca obiekty reprezentujące poprawki na komputerze.
Uwagi
To polecenie cmdlet jest dostępne tylko na platformach Windows.
Klasa Win32_QuickFixEngineering WMI reprezentuje małą aktualizację dla całego systemu, powszechnie określaną jako aktualizacja inżynierii szybkiej poprawki (QFE) zastosowana do bieżącego systemu operacyjnego. Ta klasa zwraca tylko aktualizacje dostarczane przez obsługę opartą na składnikach (CBS). Te aktualizacje nie są wymienione w rejestrze. Aktualizacje dostarczone przez Instalatora Windows (MSI) firmy Microsoft lub witryny Windows Update nie są zwracane przez Win32_QuickFixEngineering. Aby uzyskać więcej informacji, zobacz Win32_QuickFixEngineering klasy.
Dane Get-HotFix
wyjściowe mogą się różnić w różnych systemach operacyjnych.