因此,我有以下代码输出安装的所有功能和角色:
Import-Module ServerManager
$Arr = Get-WindowsFeature | Where-Object {$_.Installed -match “True”} | Select-Object -Property Name
$loopCount = $Arr.Count
For($i=0; $i -le $loopCount; $i++) {
Write-Host $Arr[$i]
}
但是,输出为:
@{Name=Backup-Features}
@{Name=Backup}
@{Name=Backup-Tools}
如何摆脱@
和{}
?
使用Select -ExpandProperty Name
代替Select -Property Name
另外,我建议使用Foreach-Object而不是C样式的for循环。
Import-Module ServerManager
Get-WindowsFeature |
Where-Object {$_.Installed -match “True”} |
Select-Object -ExpandProperty Name |
Write-Host
或者
Import-Module ServerManager
Get-WindowsFeature |
Where-Object {$_.Installed -match “True”} |
ForEach-Object {
$_.Name | Write-Host
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句