Le script ci-dessous propose de comparer un extract des agents scom avec une liste de machine, pour un suivi de déploiement par exemple.
Compare_SCOMAgent_ComputerList.ps1 (1,67 kb)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | <pre class= "wp-block-syntaxhighlighter-code" > ### COMPARE SCOM AGENTS AND COMPUTER LIST IN TXT FILE #Parameters Param ( [ Parameter ( Mandatory = $false )] $MS = "MyMS.MyDomain" , [ Parameter ( Mandatory = $false )] $Cred = $( Get-Credential "MyDomain\Me" ), [ Parameter ( Mandatory = $false )] $FilePath = "C:\ServerList.txt " ) #Import du module SCOM try { Import-Module -Name OperationsManager -ErrorAction stop } catch { write-host -ForegroundColor red "Erreur lors de l'import du module SCOM" } #Connection au management group $MGroup New-SCOMManagementGroupConnection -ComputerName $MS -Credential $Cred # Recuperation de la liste des agents (netbios name $agents = Get-SCOMAgent | select computername -ExpandProperty computername # Import du fichier $FilePath try { $ComputerList = Get-Content -Path $FilePath } catch { write-host -ForegroundColor red "Error during import of `"$FilePath`"" } # Machines dans Scom ET dans la liste $Both = $(Compare-Object -ReferenceObject $agents -DifferenceObject $ComputerList -IncludeEqual -ExcludeDifferent).inputobject # Machines uniquement dans SCOM $InScom = $(Compare-Object -ReferenceObject $agents -DifferenceObject $ComputerList | Where-Object {$_.sideindicator -eq "<="}).inputobject # Machines uniquement dans la liste $InFile = $(Compare-Object -ReferenceObject $agents -DifferenceObject $ComputerList | Where-Object {$_.sideindicator -eq "=>"}).inputobject write-host -B White -F Blue " `n $( $both .Count) COMPUTERS THAT ARE IN SCOM AND IN FILE: " $Both write-host -B White -F Blue " `n $( $InScom .Count) COMPUTERS THAT ARE ONLY IN SCOM: " $InScom write-host -B White -F Blue " `n $( $InList .Count) COMPUTERS THAT ARE ONLY IN FILE:" $InFile </pre> |
0 commentaires