Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: Configuration Manager (branch atual)
Use o Windows PowerShell para gerenciar a hierarquia do Configuration Manager. Você pode usar scripts do PowerShell para automatizar ou estender o Configuration Manager de forma semelhante a outras abordagens documentadas usando WMI e C#. Para obter mais informações, consulte SDK do Configuration Manager.
Execute cmdlets e scripts do Configuration Manager no PowerShell do console do Configuration Manager ou de uma sessão do Windows PowerShell. Quando você executa cmdlets do Configuration Manager usando o console do Configuration Manager, sua sessão é executada automaticamente no contexto do site.
Observação
Todas as versões atualmente com suporte do branch atual do Configuration Manager dão suporte ao Windows PowerShell versão 5.1. Se você já instalou o PowerShell versão 7, ainda poderá usar o PowerShell versão 5.1. Para obter mais informações, consulte Usando o PowerShell 7 lado a lado com o Windows PowerShell 5.1.
A biblioteca de cmdlets do PowerShell do Configuration Manager dá suporte ao PowerShell 7. Para obter mais informações, consulte Suporte para o PowerShell versão 7.
A partir da versão 2103, o módulo ConfigurationManager PowerShell requer o Microsoft .NET versão 4.7.2 ou posterior.
PowerShell no console do Configuration Manager
O método mais fácil para abrir o PowerShell é diretamente do console do Configuration Manager.
Inicie o console do Configuration Manager. No canto superior esquerdo, há um retângulo azul. Selecione a seta branca no retângulo azul e escolha Conectar via Windows PowerShell.
Depois que o Windows PowerShell for carregado, você verá um prompt que contém o código do site. Por exemplo, se o código do site for "ABC", o prompt terá a seguinte aparência:
PS ABC:\>Para verificar se funciona, use o cmdlet Get-CMSite . Esse cmdlet retorna informações sobre o site do Configuration Manager ao qual você está conectado no momento e quaisquer sites filho. Por exemplo, o nome do servidor do site, o diretor de instalação, o nome do site e a versão.
Observação
Quando você inicia o PowerShell ou o ISE do PowerShell no console do Configuration Manager, ele usa a política de execução AllSigned para o escopo do processo. Se essa configuração segura padrão for demais para o seu ambiente, há duas opções alternativas:
- Altere a política de execução com um comando semelhante ao exemplo a seguir:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process - Importe o módulo do PowerShell do Configuration Manager.
Importar o módulo do PowerShell do Configuration Manager
Conecte-se ao Configuration Manager de uma sessão existente do Windows PowerShell carregando manualmente o módulo do Configuration Manager.
Abra uma sessão do Windows PowerShell no menu Iniciar.
Importe o módulo do Configuration Manager usando o cmdlet Import-Module. Especifique o caminho para o módulo do Configuration Manager ou altere para o diretório que contém o módulo. Por padrão, o módulo está no seguinte caminho:
C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin\ConfigurationManager.psd1A partir da versão 2111, quando você instala o console do Configuration Manager, o caminho para o módulo agora é adicionado à variável de ambiente do sistema, PSModulePath. Para obter mais informações, consulte about_PSModulePath. Com essa alteração, você pode importar o módulo apenas pelo nome:
Import-Module ConfigurationManagerImportante
Certifique-se de não importar uma versão mais antiga do módulo que possa existir em outra pasta. Depois de importar o módulo, use os seguintes comandos para marcar a versão e o caminho do módulo:
(Get-Module -Name ConfigurationManager).Version (Get-Module -Name ConfigurationManager).PathO exemplo a seguir altera para o diretório do módulo e, em seguida, importa-o:
Set-Location 'C:\Program Files (x86)\Microsoft Endpoint Manager\AdminConsole\bin' Import-Module .\ConfigurationManager.psd1Dica
Você também pode usar a variável de ambiente SMS_ADMIN_UI_PATH . Por exemplo:
Set-Location "$env:SMS_ADMIN_UI_PATH\..\"Além disso, você pode usar o alias cd para alterar os diretórios em vez do cmdlet Set-Location .
Se for a primeira vez que importa o módulo do Configuration Manager neste computador, talvez seja necessário criar a unidade do site. Por exemplo:
New-PSDrive -Name "ABC" -PSProvider "CMSite" -Root "siteserver.contoso.com" -Description "Primary site"Dica
Quando você inicia o PowerShell a partir do console, ele cria automaticamente o PSDrive como uma conveniência para o site conectado no momento. Se você estiver em uma hierarquia, use New-PSDrive para criar unidades para cada site.
Para executar os cmdlets do Configuration Manager, você precisa alternar o caminho para o site do Configuration Manager. No exemplo a seguir, o código do site é
ABC:Set-Location ABC:Confirme se o PowerShell carregou corretamente o módulo do Configuration Manager usando o cmdlet Get-CMSite.
Atualizar a ajuda
Para obter as informações mais recentes do módulo do PowerShell do Configuration Manager, use o cmdlet Update-Help. Esse conteúdo é o mesmo publicado no Microsoft Learn para o módulo ConfigurationManager.
Importante
Devido a uma alteração na forma como o conteúdo atualizável é estruturado e publicado com o lançamento da versão 2103, não use o Update-Help em um site da versão 2010. Atualize o site para a versão 2103 ou posterior e atualize o conteúdo de ajuda local.
Para obter mais informações, consulte Notas de versão do PowerShell versão 2103.
O computador no qual você executa este cmdlet precisa de acesso à Internet, especificamente pshelpprod.blob.core.windows.net. Em seguida, execute o seguinte comando em uma sessão elevada do PowerShell:
Update-Help -Module ConfigurationManager
Depois de atualizar a ajuda de cmdlet do Configuration Manager, você pode obter ajuda sobre os cmdlets usando o cmdlet Get-Help. Por exemplo:
Get-Help Get-CMDevice
Get-Help Get-CMDevice -Examples
Get-Help Get-CMDevice -Parameter *
Para obter mais informações, consulte a seguinte postagem no blog do PowerShell: Você tem Ajuda!.
Parâmetros comuns
Todos os cmdlets do Configuration Manager dão suporte aos parâmetros comuns do PowerShell:
- Depurar
- ErrorAction
- ErrorVariable
- InformaçãoAção
- InformationVariable
- OutVariable
- OutBuffer
- Variável do pipeline
- Detalhado
- AvisoAção
- WarningVariable
Para obter mais informações, confira about_CommonParameters.
Suporte para o PowerShell versão 7
A biblioteca de cmdlets do PowerShell do Configuration Manager dá suporte ao PowerShell versão 7. Para obter mais informações sobre o PowerShell 7, incluindo instruções sobre como baixá-lo e instalá-lo, consulte Instalar o PowerShell no Windows.
Dica
O PowerShell 7 é executado como pwsh.exe. Versões anteriores do PowerShell são executadas como powershell.exe.
Cmdlets que não dão suporte ao PowerShell versão 7
Os cmdlets a seguir não dão suporte ao PowerShell 7:
- Import-CMPackage
- Import-CMDriverPackage
- Import-CMTaskSequence
- Export-CMPackage
- Export-CMDriverPackage
- Export-CMTaskSequence
- Add-CMReportingServicePoint
- Get-CMReportingServicePoint
- Remove-CMReportingServicePoint
- Set-CMReportingServicePoint
Eles exigem o .NET Framework, em vez do .NET Core, usado com o PowerShell versão 7.
A partir da versão 2103, se você tentar usar esses cmdlets em uma sessão do PowerShell versão 7, eles falharão com o seguinte erro: This cmdlet only supports the ".NET Framework" runtime.
Problemas conhecidos com o PowerShell versão 7
Você não pode iniciar o PowerShell 7 diretamente do console do Configuration Manager. Inicie manualmente o PowerShell 7 e importe o módulo do Configuration Manager.
O suporte atual é apenas para os cmdlets do Configuration Manager. Outros recursos do Configuration Manager que dependem do PowerShell podem não dar suporte à versão 7. Por exemplo, Executar Scripts, CMPivot ou a etapa de sequência de tarefas Executar Script do PowerShell .
Comentários para o PowerShell
Se você tiver comentários sobre os cmdlets do PowerShell do Configuration Manager, use as mesmas opções no console do Configuration Manager para enviar comentários. Para obter mais informações, consulte Comentários sobre o produto.
Ao enviar uma carranca, inclua as seguintes informações adicionais específicas do PowerShell:
A sintaxe exata do script ou comando que você usou para que a Microsoft possa tentar reproduzir o problema.
O comportamento que você esperava em comparação com o comportamento real.
A saída completa quando você a executa com o parâmetro comum Detalhado .
A versão e o caminho do módulo ConfigurationManager . Por exemplo, inclua a saída dos seguintes comandos:
(Get-Module -Name ConfigurationManager).Version (Get-Module -Name ConfigurationManager).PathSe um cmdlet retornar um erro, use o seguinte comando para obter detalhes de exceção:
$Error[0].Exception | Format-List * -Force
Notas de versão prévia
O artigo de recursos de visualização técnica na biblioteca de documentação principal inclui notas de versão para o PowerShell. Por exemplo, consulte Visualização técnica versão 2202.
Próximas etapas
Para obter mais informações sobre o que mudou na versão mais recente do Configuration Manager, selecione as notas de versão mais recentes no sumário.
Para obter mais informações sobre cmdlets individuais, consulte a referência de cmdlet do Configuration Manager.
Para obter mais informações sobre como aprender e começar a usar o Windows PowerShell, consulte PowerShell 101.