Prise en main des applets de commande Configuration Manager

S’applique à : Gestionnaire de Configuration (branche actuelle)

Utilisez Windows PowerShell pour gérer votre hiérarchie Configuration Manager. Vous pouvez utiliser des scripts PowerShell pour automatiser ou étendre des Configuration Manager similaires à d’autres approches documentées à l’aide de WMI et C#. Pour plus d’informations, consultez Configuration Manager SDK.

Exécutez des applets de commande et des scripts Configuration Manager dans PowerShell à partir de la console Configuration Manager ou d’une session Windows PowerShell. Lorsque vous exécutez des applets de commande Configuration Manager à l’aide de la console Configuration Manager, votre session s’exécute automatiquement dans le contexte du site.

Remarque

Toutes les versions actuellement prises en charge de Configuration Manager Current Branch prennent en charge Windows PowerShell version 5.1. Si vous avez déjà installé PowerShell version 7, vous pouvez toujours utiliser PowerShell version 5.1. Pour plus d’informations, consultez Utilisation de PowerShell 7 côte à côte avec Windows PowerShell 5.1.

La bibliothèque d’applets de commande PowerShell Configuration Manager prend en charge PowerShell 7. Pour plus d’informations, consultez Prise en charge de PowerShell version 7.

À compter de la version 2103, le module PowerShell ConfigurationManager nécessite Microsoft .NET version 4.7.2 ou ultérieure.

PowerShell à partir de la console Configuration Manager

La méthode la plus simple pour ouvrir PowerShell est directement à partir de la console Configuration Manager.

  1. Lancez la console Configuration Manager. Dans le coin supérieur gauche, il y a un rectangle bleu. Sélectionnez la flèche blanche dans le rectangle bleu, puis choisissez Se connecter via Windows PowerShell.

  2. Une fois Windows PowerShell chargées, une invite contenant le code de votre site s’affiche. Par exemple, si le code du site est « ABC », l’invite se présente comme suit : PS ABC:\>

  3. Pour vérifier son fonctionnement, utilisez l’applet de commande Get-CMSite . Cette applet de commande retourne des informations sur le site Configuration Manager auquel vous êtes actuellement connecté et sur tous les sites enfants. Par exemple, le nom du serveur de site, le directeur d’installation, le nom du site et la version.

Remarque

Lorsque vous démarrez PowerShell ou PowerShell ISE à partir de la console Configuration Manager, il utilise la stratégie d’exécution AllSigned pour l’étendue Processus. Si cette configuration sécurisée par défaut est trop importante pour votre environnement, il existe deux options pour la contourner :

Importer le module PowerShell Configuration Manager

Connectez-vous à Configuration Manager à partir d’une session Windows PowerShell existante en chargeant manuellement le module Configuration Manager.

  1. Ouvrez une session Windows PowerShell à partir du menu Démarrer.

  2. Importez le module Configuration Manager à l’aide de l’applet de commande Import-Module. Spécifiez le chemin d’accès au module Configuration Manager ou remplacez par le répertoire qui contient le module. Par défaut, le module se trouve au chemin d’accès suivant : C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\ConfigurationManager.psd1

    À compter de la version 2111, lorsque vous installez la console Configuration Manager, le chemin d’accès au module est désormais ajouté à la variable d’environnement système, PSModulePath. Pour plus d’informations, consultez about_PSModulePath. Avec cette modification, vous pouvez importer le module uniquement par son nom : Import-Module ConfigurationManager

    Importante

    Veillez à ne pas importer une version antérieure du module qui pourrait exister dans un autre dossier. Après avoir importé le module, utilisez les commandes suivantes pour vérifier la version et le chemin d’accès du module :

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

    L’exemple suivant modifie le répertoire du module, puis l’importe :

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

    Conseil

    Vous pouvez également utiliser la variable d’environnement SMS_ADMIN_UI_PATH . Par exemple :

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

    En outre, vous pouvez utiliser l’alias cd pour modifier les répertoires au lieu de l’applet de commande Set-Location .

  3. Si c’est la première fois que vous importez le module Configuration Manager sur cet ordinateur, vous devrez peut-être créer le lecteur de site. Par exemple :

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

    Conseil

    Lorsque vous démarrez PowerShell à partir de la console, il crée automatiquement le PSDrive pour le site actuellement connecté. Si vous êtes dans une hiérarchie, utilisez New-PSDrive pour créer des lecteurs pour chaque site.

  4. Pour exécuter les applets de commande Configuration Manager, vous devez basculer le chemin vers le site Configuration Manager. Dans l’exemple suivant, le code du site est ABC:

    Set-Location ABC:
    
  5. Vérifiez que PowerShell a correctement chargé le module Configuration Manager à l’aide de l’applet de commande Get-CMSite.

Mettre à jour l’aide

Pour obtenir les informations les plus récentes sur le module PowerShell Configuration Manager, utilisez l’applet de commande Update-Help. Ce contenu est identique à ce qui est publié sur Microsoft Learn pour le module ConfigurationManager.

Importante

En raison d’une modification de la façon dont le contenu pouvant être mis à jour est structuré et publié avec la version 2103, n’utilisez pas Update-Help sur un site version 2010. Mettez à jour le site vers la version 2103 ou ultérieure, puis mettez à jour le contenu de l’aide locale.

Pour plus d’informations, consultez notes de publication de PowerShell version 2103.

L’ordinateur sur lequel vous exécutez cette applet de commande a besoin d’un accès à Internet, en particulier pshelpprod.blob.core.windows.net. Exécutez ensuite la commande suivante à partir d’une session PowerShell avec élévation de privilèges :

Update-Help -Module ConfigurationManager

Après avoir mis à jour l’aide de l’applet de commande Configuration Manager, vous pouvez obtenir de l’aide sur les applets de commande à l’aide de l’applet de commande Get-Help. Par exemple :

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

Pour plus d’informations, consultez le billet de blog PowerShell suivant : Vous avez de l’aide !.

Paramètres communs

Toutes les applets de commande Configuration Manager prennent en charge les paramètres PowerShell courants :

  • Débogage
  • ErrorAction
  • ErrorVariable
  • InformationAction
  • InformationVariable
  • OutVariable
  • OutBuffer
  • PipelineVariable
  • Détaillé
  • WarningAction
  • WarningVariable

Pour plus d’informations, consultez about_CommonParameters.

Prise en charge de PowerShell version 7

La bibliothèque d’applets de commande PowerShell Configuration Manager prend en charge PowerShell version 7. Pour plus d’informations sur PowerShell 7, notamment pour savoir comment le télécharger et l’installer, consultez Installer PowerShell sur Windows.

Conseil

PowerShell 7 s’exécute en tant que pwsh.exe. Les versions antérieures de PowerShell s’exécutent en tant que powershell.exe.

Applets de commande qui ne prennent pas en charge PowerShell version 7

Les applets de commande suivantes ne prennent pas en charge PowerShell 7 :

  • Import-CMPackage
  • Import-CMDriverPackage
  • Import-CMTaskSequence
  • Export-CMPackage
  • Export-CMDriverPackage
  • Export-CMTaskSequence
  • Add-CMReportingServicePoint
  • Get-CMReportingServicePoint
  • Remove-CMReportingServicePoint
  • Set-CMReportingServicePoint

Ils nécessitent le .NET Framework au lieu de .NET Core utilisé avec PowerShell version 7.

À compter de la version 2103, si vous essayez d’utiliser ces applets de commande dans une session PowerShell version 7, elles échouent avec l’erreur suivante : This cmdlet only supports the ".NET Framework" runtime.

Problèmes connus avec PowerShell version 7

  • Vous ne pouvez pas lancer PowerShell 7 directement à partir de la console Configuration Manager. Démarrez manuellement PowerShell 7, puis importez le module Configuration Manager.

  • La prise en charge actuelle concerne uniquement les applets de commande Configuration Manager. Les autres fonctionnalités de Configuration Manager qui s’appuient sur PowerShell peuvent ne pas prendre en charge la version 7. Par exemple, Exécuter des scripts, CMPivot ou l’étape de séquence de tâches Exécuter un script PowerShell .

Commentaires sur PowerShell

Si vous avez des commentaires sur les applets de commande PowerShell Configuration Manager, utilisez les mêmes options dans la console Configuration Manager pour envoyer des commentaires. Pour plus d’informations, consultez Commentaires sur les produits.

Lorsque vous envoyez un sourcil froncé, incluez les informations supplémentaires suivantes spécifiques à PowerShell :

  • Syntaxe de script ou de commande exacte que vous avez utilisée pour que Microsoft puisse essayer de reproduire le problème.

  • Quel comportement vous attendiez par rapport au comportement réel.

  • Sortie complète lorsque vous l’exécutez avec le paramètre commun Verbose .

  • Version et chemin du module ConfigurationManager . Par exemple, incluez la sortie des commandes suivantes :

    (Get-Module -Name ConfigurationManager).Version
    (Get-Module -Name ConfigurationManager).Path
    
  • Si une applet de commande retourne une erreur, utilisez la commande suivante pour obtenir les détails de l’exception :

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

Notes de publication en préversion

L’article fonctionnalités technical preview de la bibliothèque de documentation principale inclut des notes de publication pour PowerShell. Par exemple, consultez Technical Preview version 2202.

Prochaines étapes

Pour plus d’informations sur ce qui a changé dans la version la plus récente de Configuration Manager, sélectionnez les dernières notes de publication dans la table des matières.

Pour plus d’informations sur les applets de commande individuelles, consultez les informations de référence sur les applets de commande Configuration Manager.

Pour plus d’informations sur l’apprentissage et la prise en main des Windows PowerShell, consultez PowerShell 101.