Windows Update History
Aşağıdaki tüm komutlar Poweshell üzerinde çalıştırılmalıdır.
Bu komut yüklü güncellemeleri alır ve Powershell eranında gösterir tek satırlık Powershell Komutu:
Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object @{Name='InstalledOn';Expression={$_.InstalledOn.ToString('yyyy-MM-dd')}}, HotFixID, Description, InstalledBy
Bu komut yüklü güncellemeleri alır ve Powershell eranında gösterir:
Get-HotFix |
Sort-Object InstalledOn -Descending |
Select-Object @{
Name='InstalledOn'; Expression={ $_.InstalledOn.ToString('yyyy-MM-dd') }
}, HotFixID, Description, InstalledBy
Daha detaylı ve bazen daha kapsamlı yöntem – WMI/CIM
Get-CimInstance Win32_QuickFixEngineering |
Sort-Object InstalledOn -Descending |
Select-Object InstalledOn, HotFixID, Description, InstalledBy
Önemli not
Get-HotFix / Win32_QuickFixEngineering çoğu Windows Update / KB kaydını gösterir; ancak bazı:
- Defender intelligence update’leri,
- Microsoft Store update’leri,
- feature update bileşenleri,
- bazı cumulative update alt bileşenleri
her zaman burada tam görünmeyebilir.
HTML raporu üreten PowerShell scripti
$OutFile = "C:\Temp\InstalledUpdates_Report.html"
New-Item -ItemType Directory -Path (Split-Path $OutFile) -Force | Out-Null
$ComputerName = $env:COMPUTERNAME
$OS = (Get-CimInstance Win32_OperatingSystem).Caption
$GeneratedOn = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
$Updates = Get-HotFix |
Sort-Object InstalledOn -Descending |
Select-Object `
@{Name='ComputerName';Expression={$env:COMPUTERNAME}},
@{Name='OperatingSystem';Expression={$OS}},
@{Name='InstalledOn';Expression={
if ($_.InstalledOn) {
try { ([datetime]$_.InstalledOn).ToString('yyyy-MM-dd') }
catch { $_.InstalledOn }
} else {
""
}
}},
HotFixID,
Description,
InstalledBy
$Header = @"
<html>
<head>
<meta charset='UTF-8'>
<title>Installed Updates Report - $ComputerName</title>
<style>
body {
font-family: Arial, Helvetica, sans-serif;
margin: 20px;
color: #222;
}
h1 {
color: #1f4e79;
margin-bottom: 5px;
}
h2 {
color: #444;
margin-top: 0;
font-size: 16px;
font-weight: normal;
}
.meta {
margin-bottom: 20px;
padding: 12px;
background: #f4f6f8;
border-left: 4px solid #1f4e79;
}
table {
border-collapse: collapse;
width: 100%;
font-size: 13px;
}
th {
background-color: #1f4e79;
color: white;
padding: 8px;
border: 1px solid #d0d7de;
text-align: left;
}
td {
padding: 8px;
border: 1px solid #d0d7de;
}
tr:nth-child(even) {
background-color: #f8f9fa;
}
tr:hover {
background-color: #eef5ff;
}
</style>
</head>
<body>
<h1>Installed Updates Report</h1>
<h2>$ComputerName</h2>
<div class='meta'>
<b>Computer Name:</b> $ComputerName<br>
<b>Operating System:</b> $OS<br>
<b>Report Generated On:</b> $GeneratedOn
</div>
"@
$Footer = @"
</body>
</html>
"@
$Table = $Updates | ConvertTo-Html -Fragment
($Header + $Table + $Footer) | Out-File -FilePath $OutFile -Encoding UTF8
Write-Host "HTML rapor oluşturuldu: $OutFile"
HTML raporu üreten Tek satırlık PowerShell scripti
$OutFile="C:\Temp\InstalledUpdates_Report.html"; New-Item -ItemType Directory -Path (Split-Path $OutFile) -Force | Out-Null; $ComputerName=$env:COMPUTERNAME; $OS=(Get-CimInstance Win32_OperatingSystem).Caption; $GeneratedOn=Get-Date -Format "yyyy-MM-dd HH:mm:ss"; $Updates=Get-HotFix | Sort-Object InstalledOn -Descending | Select-Object @{Name='ComputerName';Expression={$env:COMPUTERNAME}}, @{Name='OperatingSystem';Expression={$OS}}, @{Name='InstalledOn';Expression={if($_.InstalledOn){try{([datetime]$_.InstalledOn).ToString('yyyy-MM-dd')}catch{$_.InstalledOn}}else{""}}}, HotFixID, Description, InstalledBy; $Header="<html><head><meta charset='UTF-8'><title>Installed Updates Report - $ComputerName</title><style>body{font-family:Arial,Helvetica,sans-serif;margin:20px;color:#222;}h1{color:#1f4e79;margin-bottom:5px;}h2{color:#444;margin-top:0;font-size:16px;font-weight:normal;}.meta{margin-bottom:20px;padding:12px;background:#f4f6f8;border-left:4px solid #1f4e79;}table{border-collapse:collapse;width:100%;font-size:13px;}th{background-color:#1f4e79;color:white;padding:8px;border:1px solid #d0d7de;text-align:left;}td{padding:8px;border:1px solid #d0d7de;}tr:nth-child(even){background-color:#f8f9fa;}tr:hover{background-color:#eef5ff;}</style></head><body><h1>Installed Updates Report</h1><h2>$ComputerName</h2><div class='meta'><b>Computer Name:</b> $ComputerName<br><b>Operating System:</b> $OS<br><b>Report Generated On:</b> $GeneratedOn</div>"; $Footer="</body></html>"; ($Header + ($Updates | ConvertTo-Html -Fragment) + $Footer) | Out-File -FilePath $OutFile -Encoding UTF8; Write-Host "HTML rapor oluşturuldu: $OutFile"