Mit Powershell alle SCCM Clients auslesen

powershell win32 processor1

Es kann nützlich sein die Daten vom SCCM (Microsoft System Center Configuration Manager) mit Powershell auszulesen. Ich nutze es um die Daten in ein anderes Programm zur Auswertung oder Anreicherung von Daten zu importieren. Die folgenden Zeilen lesen vom SCCM Server „cassrv1.mj.local“ alles Clients mit dem SiteCode „CAS“ über „Get-CMDevice“ aus. Wer mehr über Powershell und SCCM lesen möchte, wird im Technet fündig.

### config
$SCCM_SiteCode = "CAS" # Standortcode 

$SCCM_Server = "cassrv1.mj.local"

$SCCM_initParams = @{}

$SCCM_targetfile="C:\temp\sccm_export.csv"

### execution
if((Get-Module ConfigurationManager) -eq $null) {
    Import-Module "$($ENV:SMS_ADMIN_UI_PATH)\..\ConfigurationManager.psd1" @SCCM_initParams 
}

if((Get-PSDrive -Name $SCCM_SiteCode -PSProvider CMSite -ErrorAction SilentlyContinue) -eq $null) {
    New-PSDrive -Name $SCCM_SiteCode -PSProvider CMSite -Root $SCCM_Server @SCCM_initParams
}

Set-Location "$($SCCM_SiteCode):\" @SCCM_initParams

# get all clients
$SCCM_clients = Get-CMDevice  | Where-Object { $_.IsClient -eq $true } | Select-Object Name,SiteCode,SerialNumber,SMSID,LastActiveTime,Domain,CNAccessMP,ClientVersion


$SCCM_clients | Export-Csv $SCCM_targetfile -Encoding utf8

weitere Beiträge ähnlich dem Thema SCCM und Powershell