Add-windowscapability -online: Get-windowscapability -name Rsat* -online |

Get-WindowsCapability -Name RSAT* -Online | ForEach-Object Write-Host "Installing $($_.Name)..." -ForegroundColor Cyan Add-WindowsCapability -Online -Name $_.Name

If you run:

But why might it still be “not a good report”? Your command provides no feedback until it finishes or errors. Better approach:

$results | Select-Object Name, State, RestartNeeded Or real-time progress:

Or to capture results: