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 , który zawiera 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 zdalnej programu Windows PowerShell. Jeśli komputer nie jest skonfigurowany do uruchamiania poleceń zdalnych, użyj parametru ComputerName .
Typ: | String[] |
Aliasy: | CN, __Server, IPAddress |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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 protokół SecureString?.
Typ: | PSCredential |
Position: | Named |
Domyślna wartość: | Current user |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Description
Get-HotFix
używa parametru Opis do określania typów poprawek. Dozwolone są symbole wieloznaczne.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | True |
-Id
Filtruje wyniki pod kątem Get-HotFix
określonych identyfikatorów poprawek. Symbole wieloznaczne nie są akceptowane.
Typ: | String[] |
Aliasy: | HFID |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
String
Możesz potokować ciąg zawierający nazwę komputera do tego polecenia cmdlet.
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 dostarczane przez instalatora Microsoft Windows (MSI) lub witryny Windows Update nie są zwracane przez Win32_QuickFixEngineering. Aby uzyskać więcej informacji, zobacz Win32_QuickFixEngineering class (Klasa Win32_QuickFixEngineering).
Dane Get-HotFix
wyjściowe mogą się różnić w różnych systemach operacyjnych.