Get-windowscapability -name Rsat* -online | Add-windowscapability -online ✰
Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability -Online You’ll likely get an error like: Add-WindowsCapability: A positional parameter cannot be found that accepts argument ... Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability -Online Wait — that’s the same command you wrote. Let me clarify: the pipeline works by binding -Name automatically if the object has a Name property. RSAT capabilities do. So actually, your command is syntactically valid .
Get-WindowsCapability -Name RSAT* -Online | ForEach-Object Write-Host "Installing $($_.Name)..." -ForegroundColor Cyan Add-WindowsCapability -Online -Name $_.Name RSAT capabilities do
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? For a clean report after installation $installed =
$results = Get-WindowsCapability -Name RSAT* -Online | ForEach-Object Add-WindowsCapability -Online -Name $_.Name RSAT capabilities do. So actually
Or to capture results:
Get-WindowsCapability -Name RSAT* -Online | ForEach-Object Add-WindowsCapability -Online -Name $_.Name