Get-windowscapability -name Rsat* -online | Add-windowscapability -online Extra Quality – Ultimate & Latest

$results = Get-WindowsCapability -Name RSAT* -Online | ForEach-Object Add-WindowsCapability -Online -Name $_.Name

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

The command you've shown is close, but has a syntax issue. but has a syntax issue.

Or to capture results:

Get-WindowsCapability -Name RSAT* -Online | ForEach-Object Add-WindowsCapability -Online -Name $_.Name RestartNeeded Or real-time progress:

Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability -Online -Verbose -Verbose will show you what’s happening per capability. For a clean report after installation $installed = Get-WindowsCapability -Name RSAT* -Online | Where-Object State -eq Installed $installed | Select-Object Name, State Would you like a script that logs each install result to a CSV file as well?

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