Bagaimana saya bisa menanyakan sistem saya melalui baris perintah untuk melihat apakah patch KB diinstal?


Jawaban:


64

Selain systeminfoada juga wmic qfe

Contoh:

wmic qfe get hotfixid | find "KB99999"
wmic qfe | find "KB99999"

Ada juga update.exe

Atau dari PowerShell, sesuaikan saja untuk kebutuhan Anda:

Get-WmiObject -query 'select * from win32_quickfixengineering' | foreach {$_.hotfixid}

3
Bagaimana saya melakukannya di masa lalu. Sangat mudah dengan psexec, tetapi perlu diingat bahwa perintah find mungkin tidak berfungsi kecuali jika Anda menentukan stdout alih-alih omong kosong hibrida yang aneh wmicdimuntahkan secara teratur. wmic /output:stdout qfe get hotfixid | find "KB99999".
songei2f

Apakah saya perlu menjalankannya sebagai administrator? Sepertinya tempat lain memberi tahu saya bahwa saya memang butuh. Jadi saya ingin memeriksa.
José

Untuk alasan apa pun, menggunakan "find" memberi saya kesalahan format yang salah. Mencoba kutipan tunggal dan ganda.
Scott

@Scott (dan lainnya yang mengalami masalah yang sama): CMdlet find PS membutuhkan parameter. Find.exe yang Anda jalankan dari cmd tidak.
Mastacheata

17

PowerShell 2.0 berisi cmdlet get-hotfix, yang merupakan cara mudah untuk memeriksa apakah perbaikan terbaru yang diberikan diinstal pada komputer lokal atau komputer jarak jauh. Contoh sintaks dasarnya adalah

get-hotfix -id KB974332

Ini tidak ada dalam v4
StingyJack

Pasti hadir di v5.1. Dan inilah halaman bantuan: docs.microsoft.com/en-gb/powershell/module/…
Ant

6

jalankan "systeminfo" di jendela CMD dan itu akan menarik kembali banyak statistik tentang sistem Anda termasuk patch apa yang diinstal.


3

Beberapa kemungkinan lain: Grep% windir% \ Windowsupdate.log untuk nomor KB. Atau gunakan reg.exe untuk mengekspor kunci instal yang terkait.


1
Windows saya tidak datang grep. Saya harus menggunakan find.
jscott

@ jscott: Saya tahu bahwa grep adalah non-standar pada Windows :-) Cari atau findstr akan lebih cocok. Tetapi saya menggunakan kata grep di sini sebagai "to grep" untuk menunjukkan proses sebagai ganti arti sebenarnya dari utilitas "grep". Menggunakan grep sebagai kata kerja sangat umum di kalangan Unix tempat saya biasanya beroperasi, jadi saya menggunakan istilah ini lebih atau kurang tanpa berpikir itu mungkin terlihat aneh bagi seorang pria Windows.
Tonny

Menghargai ini adalah jawaban lama tetapi% windir% \ Windowsupdate.log tampaknya hanya menampilkan pembaruan selama sebulan terakhir. Mungkin karena itu dikonfigurasi untuk memulai setelah waktu itu, tetapi saya hanya menunjukkan bahwa dalam beberapa kasus tidak menemukannya di log itu mungkin tidak menunjukkan itu tidak ada dalam sistem.
glaucon

0
wmic qfe list /format:htable>C:\PatchList%Computername%.html

Perintah di atas akan memberikan output dalam format html.


0

Ketika seseorang bertanya tentang menggunakan wmic pada prompt PowerShell, cukup gunakan Select-String (atau sls).

wmic qfe get hotfixid | sls "KB99999"

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.