我拉着從SCOM服務器列表,並要檢查這個名單對其中包含以下數據的CSV:如果發現服務器查找值從第2列
Computername,Collection Name
Server01,NA - All DA Servers - Patching - Cert - Thu 2:00
Server02,NA - All DA Servers - Patching - Prod - Wed 18:00
,返回集合名稱。我只是不確定什麼是最好的方法。
Import-Module OperationsManager
New-SCOMManagementGroupConnection -ComputerName SCOMsvr
$PendReboot = Get-ScomAlert -Criteria "Severity = 1 AND ResolutionState < 254 AND Name = 'Pending Reboot'" |
Select NetbiosComputerName
$data = Import-Csv .\servers2.csv
$table = $data | Group-Object -AsHashTable -AsString -Property Computername
編輯 - 第二次嘗試代碼:
$csv = Import-Csv D:\SCOM-Pend-Reboot.csv
$biglist = Import-Csv D:\servers2.csv
foreach ($line in $csv){
$server = $line.NetbiosComputerName
if ($server -eq $biglist.Computername) {
"$server is in $biglist.'Collection Name'"
} else {
"$server is not found!"
}
}
我真的很感謝回覆!運行這個返回'索引操作失敗;數組索引在'$ table [$ _。Computername] = $ _。'Collection Name'處評估爲null'' – user4317867
@ user4317867您的CSV中有一個空行。去掉它。 –
@ user4317867我發佈的代碼導入CSV並用數據填充散列表'$ table'。在此過程中沒有生成控制檯輸出。 –