4.4 KiB

title, description, ms.prod, ms.mktglfcycl, ms.sitesec, author, ms.author, ms.topic, ms.localizationpriority, ms.reviewer, manager
title description ms.prod ms.mktglfcycl ms.sitesec author ms.author ms.topic ms.localizationpriority ms.reviewer manager
PowerShell cmdlets for provisioning Windows 10/11 (Windows 10/11) w10 deploy library greg-lindsay greglin article medium gkomatsu dansimp

PowerShell cmdlets for provisioning Windows client (reference)

Applies to

  • Windows 10
  • Windows 11

Windows client includes Provisioning PowerShell cmdlets. These cmdlets make it easy to script the following functions.

cmdlets

  • Add-ProvisioningPackage: Applies a provisioning package.

    Syntax:

    • Add-ProvisioningPackage [-Path] <string> [-ForceInstall] [-LogsFolder <string>] [-QuietInstall] [-WprpFile <string>] [<CommonParameters>]
  • Remove-ProvisioningPackage: Removes a provisioning package.

    Syntax:

    • Remove-ProvisioningPackage -PackageId <string> [-LogsFolder <string>] [-WprpFile <string>] [<CommonParameters>]
    • Remove-ProvisioningPackage -Path <string> [-LogsFolder <string>] [-WprpFile <string>] [<CommonParameters>]
    • Remove-ProvisioningPackage -AllInstalledPackages [-LogsFolder <string>] [-WprpFile <string>] [<CommonParameters>]
  • Get-ProvisioningPackage: Gets information about an installed provisioning package.

    Syntax:

    • Get-ProvisioningPackage -PackageId <string> [-LogsFolder <string>] [-WprpFile <string>] [<CommonParameters>]
    • Get-ProvisioningPackage -Path <string> [-LogsFolder <string>] [-WprpFile <string>] [<CommonParameters>]
    • Get-ProvisioningPackage -AllInstalledPackages [-LogsFolder <string>] [-WprpFile <string>] [<CommonParameters>]
  • Export-ProvisioningPackage: Extracts the contents of a provisioning package.

    Syntax:

    • Export-ProvisioningPackage -PackageId <string> -OutputFolder <string> [-Overwrite] [-AnswerFileOnly] [-LogsFolder <string>] [-WprpFile <string>] [<CommonParameters>]
    • Export-ProvisioningPackage -Path <string> -OutputFolder <string> [-Overwrite] [-AnswerFileOnly] [-LogsFolder <string>] [-WprpFile <string>] [<CommonParameters>]
  • Install-TrustedProvisioningCertificate: Adds a certificate to the Trusted Certificate store.

    Syntax:

    • Install-TrustedProvisioningCertificate <path to local certificate file on disk>
  • Get-TrustedProvisioningCertificate: Lists all installed trusted provisioning certificates. Use this cmdlet to get the certificate thumbprint to use with the Uninstall-TrustedProvisioningCertificate cmdlet.

    Syntax:

    • Get-TrustedProvisioningCertificate
  • Uninstall-TrustedProvisioningCertificate: Removes a previously installed provisioning certificate.

    Syntax:

    • Uninstall-TrustedProvisioningCertificate <thumbprint>

Note

You can use Get-Help to get usage help on any command. For example: Get-Help Add-ProvisioningPackage

Trace logs are captured when using cmdlets. The following logs are available in the logs folder after the cmdlet completes:

  • ProvTrace.<timestamp>.ETL - ETL trace file, unfiltered
  • ProvTrace.<timestamp>.XML - ETL trace file converted into raw trace events, unfiltered
  • ProvTrace.<timestamp>.TXT - TEXT file containing trace output formatted for easy reading, filtered to only show events logged by providers in the WPRP file
  • ProvLogReport.<timestamp>.XLS - Excel file containing trace output, filtered to only show events logged by providers in WPRP file

Note

When applying provisioning packages using Powershell cmdlets, the default behavior is to suppress the prompt that appears when applying an unsigned provisioning package. This is by design so that provisioning packages can be applied as part of existing scripts.