New-CMTSStepCaptureUserState
Create a Capture User State step, which you can add to a task sequence.
Syntax
New-CMTSStepCaptureUserState
[-ConfigFile <String[]>]
[-ContinueOnLockedFile <Boolean>]
[-FileAccessOption <FileAccessType>]
[-ModeOption <ModeType>]
[-OfflineUserState <Boolean>]
-Package <IResultObject>
[-SkipEncryptedFile <Boolean>]
[-UseHardLinks <Boolean>]
[-VerboseLogging <Boolean>]
[-Condition <IResultObject[]>]
[-ContinueOnError]
[-Description <String>]
[-Disable]
-Name <String>
[-DisableWildcardHandling]
[-ForceWildcardHandling]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
This cmdlet creates a new Capture User State step object. Then use the Add-CMTaskSequenceStep cmdlet to add the step to a task sequence. For more information on this step, see About task sequence steps: Capture User State.
Note
Run Configuration Manager cmdlets from the Configuration Manager site drive, for example PS XYZ:\>
. For more information, see getting started.
Examples
Example 1
This example first gets a package object for the User State Migration Tool (USMT). The next line creates an object for the Capture User State step, which uses that USMT package and configures several step settings. It then gets a task sequence object, and adds this new step to the task sequence at index 11.
$pkgUsmt = Get-CMPackage -Name "User State Migration Tool for Windows" -Fast
$step = New-CMTSStepCaptureUserState -Name "Capture User State" -Package $pkgUsmt -ModeOption Standard -VerboseLogging $true -FileAccessOption Normal -ContinueOnLockedFile $true -UseHardLinks $true
$tsNameOsd = "Default OS deployment"
$tsOsd = Get-CMTaskSequence -Name $tsNameOsd -Fast
$tsOsd | Add-CMTaskSequenceStep -Step $step -InsertStepStartIndex 11
Parameters
-Condition
Specify a condition object to use with this step. To get this object, use one of the task sequence condition cmdlets. For example, Get-CMTSStepConditionVariable.
Type: | IResultObject[] |
Aliases: | Conditions |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConfigFile
When you specify -ModeOption Customize
to customize how user profiles are captured, use this parameter to specify the file names of custom XML configuration files. These files need to be in the USMT package.
Type: | String[] |
Aliases: | ConfigFiles |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Prompts you for confirmation before running the cmdlet.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ContinueOnError
Add this parameter to enable the step option Continue on error. When you enable this option, if the step fails, the task sequence continues.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ContinueOnLockedFile
When you specify -FileAccessOption Normal
, set this parameter to $true
to allow USMT to continue if some files can't be captured.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
Specify an optional description for this task sequence step.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Disable
Add this parameter to disable this task sequence step.
Type: | SwitchParameter |
Aliases: | DisableThisStep |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisableWildcardHandling
This parameter treats wildcard characters as literal character values. You can't combine it with ForceWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FileAccessOption
There are two options for how USMT accesses the file system:
Normal
: USMT uses standard file system access. When you specify this option, you can also enable ContinueOnLockedFile, OfflineUserState, and -.VolumeCopyShadowService
: USMT uses the Volume Copy Shadow Services (VSS).
Type: | FileAccessType |
Accepted values: | Normal, VolumeCopyShadowService |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ForceWildcardHandling
This parameter processes wildcard characters and may lead to unexpected behavior (not recommended). You can't combine it with DisableWildcardHandling.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModeOption
There are two modes in which USMT can operate:
Standard
: Capture all user profiles by using standard options. This option is the default.Customize
: Customize how user profiles are captured. If you specify this option, use the ConfigFile parameter to specify the custom XML configuration files.
Type: | ModeType |
Accepted values: | Standard, Customize |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Specify a name for this step to identify it in the task sequence.
Type: | String |
Aliases: | StepName |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-OfflineUserState
When you specify -FileAccessOption Normal
, set this parameter to $true
to capture in offline mode in Windows PE.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Package
Specify an object for the USMT package. To get this object, use the Get-CMPackage cmdlet.
Type: | IResultObject |
Aliases: | UserStateMigrationToolPackage |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipEncryptedFile
Set this parameter to $true
to skip files that use the encrypting file system (EFS).
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseHardLinks
When you specify -FileAccessOption Normal
, set this parameter to $true
to capture locally by using NTFS hard-links.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VerboseLogging
Set this parameter to $true
to enable USMT verbose logging.
Type: | Boolean |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Shows what would happen if the cmdlet runs. The cmdlet doesn't run.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Inputs
None
Outputs
IResultObject
Notes
For more information on this return object and its properties, see SMS_TaskSequence_CaptureUserStateAction server WMI class.