我将创建(使用PowerShell脚本)一个表并将结果(正/负)添加到其中。 我有一个文本文件computers.txt,其中列出了所有PC。
喜欢这个
CSNAME Hotfixinfo PC1 is installed PC2 is not installed PC3 is installed etc.
使用我的实际脚本,我只能看到积极的结果。
Get-Content .\computers.txt | Where {
$_ -and (Test-Connection $_ -Quiet)
} | foreach {
Get-Hotfix -Id KB4012212 -ComputerName $_ |
Select CSName,HotFixID |
ConvertTo-Csv |
Out-File "C:\$_.csv"
}
答案 0 :(得分:0)
我建议解析并处理正面和负面结果(也比管道ForEach-Object
更快):
:parse ForEach ($Computer in (Get-Content C:\Path\computers.txt))
{
If (Test-Connection $Computer -Quiet)
{
$Result = Get-Hotfix -Id KB4012212 -ComputerName $Computer -ErrorAction 'SilentlyContinue'
If ($Result)
{
$Result |
Select-Object -Property CSName,HotFixID |
ConvertTo-Csv -NoTypeInformation |
Out-File "C:\$Computer.csv"
Continue :parse
}
"`"CSName`",`"HotFixID`"`r`n`"$Computer`",`"NUL`"" |
Out-File "C:\$Computer.csv"
} Else { Write-Host 'Unable to connect to $Computer' }
}