Aan de slag Configuration Manager cmdlets

Van toepassing op: Configuration Manager (current branch)

Gebruik Windows PowerShell om uw eigen hiërarchie Configuration Manager beheren. U kunt PowerShell-scripts gebruiken voor het automatiseren of uitbreiden Configuration Manager vergelijkbaar met andere gedocumenteerde benaderingen met behulp van WMI en C#. Zie voor meer informatie Configuration Manager SDK.

Voer Configuration Manager cmdlets en scripts uit in PowerShell vanuit de Configuration Manager console of vanuit een Windows PowerShell sessie. Wanneer u de Configuration Manager met behulp van de Configuration Manager-console, wordt uw sessie automatisch uitgevoerd in de context van de site.

Notitie

Alle momenteel ondersteunde versies van Configuration Manager Current Branch ondersteunen Windows PowerShell versie 5.1. Als u PowerShell versie 7 al hebt geïnstalleerd, kunt u nog steeds PowerShell versie 5.1 gebruiken. Zie PowerShell 7 naast elkaar gebruiken met Windows PowerShell 5.1voor meer informatie.

Vanaf versie 2010 ondersteunt Configuration Manager PowerShell-cmdlet-bibliotheek PowerShell 7. Zie Ondersteuning voor PowerShell versie 7 voor meer informatie.

Vanaf versie 2103 is voor de ConfigurationManager PowerShell-module Microsoft .NET versie 4.7.2 of hoger vereist.

PowerShell vanuit de Configuration Manager console

De eenvoudigste methode om PowerShell te openen, is rechtstreeks vanuit de Configuration Manager console.

  1. Start de Configuration Manager console. In de linkerbovenhoek staat een blauwe rechthoek. Selecteer de witte pijl in de blauwe rechthoek en kies Verbinding maken via Windows PowerShell.

  2. Nadat Windows PowerShell geladen, ziet u een prompt die uw sitecode bevat. Als de sitecode bijvoorbeeld 'ABC' is, ziet de prompt er als volgende uit: PS ABC:\>

  3. Gebruik de cmdlet Get-CMSite om te controleren of het werkt. Deze cmdlet retourneert informatie over de Configuration Manager site die u momenteel verbonden bent en eventuele onderliggende sites. Bijvoorbeeld de naam van de siteserver, de installatiedirectrice, de sitenaam en de versie.

De PowerShell Configuration Manager module importeren

Verbinding maken voor Configuration Manager van een bestaande Windows PowerShell door de module handmatig te Configuration Manager laden.

  1. Open een Windows PowerShell vanuit de Startmenu.

  2. Importeer Configuration Manager module met behulp van de cmdlet Import-Module. Geef het pad op naar Configuration Manager module of wijzig naar de map die de module bevat. De module is standaard op het volgende pad: C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\ConfigurationManager.psd1

    Belangrijk

    Dit pad is vanaf versie 1910 gewijzigd om de map te Microsoft Endpoint Manager gebruiken. Zorg ervoor dat u geen oudere versie van de module importeert die mogelijk in een andere map bestaat. Nadat u de module hebt geïmporteerd, gebruikt u de volgende opdrachten om de versie en het pad van de module te controleren:

    (Get-Module -Name ConfigurationManager).Version
    (Get-Module -Name ConfigurationManager).Path
    

    In het volgende voorbeeld wordt de map van de module gewijzigd en vervolgens geïmporteerd:

    Set-Location 'C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin'
    Import-Module .\ConfigurationManager.psd1
    

    Tip

    U kunt ook de omgevingsvariabele SMS_ADMIN_UI_PATH gebruiken. Bijvoorbeeld:

    Set-Location "$env:SMS_ADMIN_UI_PATH\..\"
    

    U kunt ook de cd-alias gebruiken om van directories te wisselen in plaats van de cmdlet Set-Location.

  3. Als dit de eerste keer is dat u de module Configuration Manager computer importeert, moet u mogelijk het sitestation maken. Bijvoorbeeld:

    New-PSDrive -Name "ABC" -PSProvider "AdminUI.PS.Provider\CMSite" -Root "siteserver.contoso.com" -Description "Primary site"
    

    Tip

    Wanneer u PowerShell start vanuit de -console, wordt automatisch de PSDrive gemaakt voor de momenteel verbonden site. Als u zich in een hiërarchie hebt, gebruikt u New-PSDrive om stations voor elke site te maken.

  4. Als u de Configuration Manager cmdlets wilt uitvoeren, moet u het pad naar de Configuration Manager schakelen. In het volgende voorbeeld is de sitecode ABC :

    Set-Location ABC:
    
  5. Controleer of powershell de module Configuration Manager geladen met behulp van de cmdlet Get-CMSite.

Help bijwerken

Vanaf versie 2010 gebruikt u de cmdlet Update-Help om de meest recente informatie voor de Configuration Manager PowerShell-module op te halen. Deze inhoud is hetzelfde als wat is gepubliceerd op docs.microsoft.com voor de ConfigurationManager-module.

Belangrijk

Vanwege een wijziging in de manier waarop de bij te werken inhoud is gestructureerd en gepubliceerd met versie 2103, gebruikt u Update-Help niet op een versie 2010-site. Werk de site bij naar versie 2103 en werk vervolgens de lokale Help-inhoud bij.

Zie Releaseop opmerkingen bij PowerShell-versie 2103 voor meer informatie.

De computer waarop u deze cmdlet hebt uitgevoerd, heeft internettoegang nodig, met name pshelpprod.blob.core.windows.net . Voer vervolgens de volgende opdracht uit vanuit een PowerShell-sessie met verhoogde bevoegdheid:

Update-Help -Module ConfigurationManager

Nadat u de help voor Configuration Manager cmdlet hebt bijgewerkt, kunt u hulp krijgen bij de cmdlets met behulp van de cmdlet Get-Help. Bijvoorbeeld:

Get-Help Get-CMDevice
Get-Help Get-CMDevice -Examples
Get-Help Get-CMDevice -Parameter *

Zie de volgende PowerShell-blogpost: U hebt Help! voor meer informatie.

Algemene parameters

Alle Configuration Manager-cmdlets ondersteunen de algemene PowerShell-parameters:

  • Fouten opsporen
  • ErrorAction
  • Foutvariabele
  • InformationAction
  • InformationVariable
  • OutVariable
  • OutBuffer
  • PipelineVariable
  • Uitgebreid
  • WarningAction
  • WaarschuwingVariable

Zie voor meer informatie about_CommonParameters.

Ondersteuning voor PowerShell versie 7

Vanaf versie 2010 ondersteunt Configuration Manager PowerShell-cmdlet-bibliotheek PowerShell versie 7. Zie Install PowerShell on Windows (PowerShellinstalleren op Windows) voor meer informatie over PowerShell 7, inclusief aanwijzingen voor het downloaden en installeren ervan.

Tip

PowerShell 7 wordt uitgevoerd als pwsh.exe . Eerdere versies van PowerShell worden uitgevoerd als powershell.exe .

Cmdlets die geen ondersteuning bieden voor PowerShell versie 7

De volgende cmdlets bieden geen ondersteuning voor PowerShell 7:

  • Import-CMPackage
  • Import-CMDriverPackage
  • Import-CMTaskSequence
  • Export-CMPackage
  • Export-CMDriverPackage
  • Export-CMTaskSequence

Ze vereisen de .NET Framework in plaats van .NET Core die wordt gebruikt met PowerShell versie 7.

Als u vanaf versie 2103 deze cmdlets in een PowerShell-sessie van versie 7 probeert te gebruiken, mislukken deze met de volgende fout: This cmdlet only supports the ".NET Framework" runtime.

Bekende problemen met PowerShell versie 7

  • U kunt PowerShell 7 niet rechtstreeks vanuit de Configuration Manager starten. Start PowerShell 7 handmatig en importeer vervolgens de Configuration Manager module.

  • Huidige ondersteuning is alleen voor de Configuration Manager cmdlets. Andere functies van Configuration Manager die afhankelijk zijn van PowerShell bieden mogelijk geen ondersteuning voor versie 7. Bijvoorbeeld Scripts uitvoeren, CMPivotof de takenreeksstap PowerShell-script uitvoeren.

Feedback voor PowerShell

Als u feedback hebt over de Configuration Manager PowerShell-cmdlets, gebruikt u dezelfde opties in de Configuration Manager console om feedback te verzenden. Zie Productfeedback voor meer informatie.

Wanneer u een frons verzendt, moet u de volgende aanvullende informatie opnemen die specifiek is voor PowerShell:

  • Het exacte script of de opdrachtsyntaxis die u hebt gebruikt, zodat Microsoft het probleem kan reproduceren.

  • Welk gedrag u verwachtte, is vergeleken met het werkelijke gedrag.

  • De volledige uitvoer wanneer u deze uitvoer met de uitgebreide algemene parameter.

  • De versie en het pad van de ConfigurationManager-module. Neem bijvoorbeeld de uitvoer van de volgende opdrachten op:

    (Get-Module -Name ConfigurationManager).Version
    (Get-Module -Name ConfigurationManager).Path
    
  • Als een cmdlet een fout retourneert, gebruikt u de volgende opdracht om uitzonderingsdetails op te halen:

    $Error[0].Exception | Format-List * -Force
    

Opmerkingen bij de preview-release

Het artikel over technische preview-functies in de kerndocumentatiebibliotheek bevat opmerkingen bij de release voor PowerShell. Zie bijvoorbeeld Technical Preview versie 2106.

Volgende stappen

Voor meer informatie over wat er is gewijzigd in de meest recente versie van Configuration Manager, selecteert u de meest recente opmerkingen bij de release in de inhoudsopgave.

Zie voor meer informatie over afzonderlijke cmdlets de Configuration Manager cmdlet reference ( Naslaginformatie voor cmdlets).

Zie PowerShell 101voor Windows PowerShell informatie over het leren en aan de slag gaan met uw Windows PowerShell.