Configuration Manager版本 2002 的 Cmdlet 库更改

适用于: Configuration Manager(current branch)

备注

Configuration Manager当前分支版本 1910 是这些更改的基线。 有关详细信息,请参阅版本 1910 的Configuration Manager Cmdlet 库更改

重要更改

New cmdlet

New-CMSoftwareUpdatePhase

使用此 cmdlet 创建软件更新的部署阶段。

New-CMSoftwareUpdatePhase `
 -CollectionName "MyCollection" `
 -PhaseName "MySUPhase"`
 -UserNotificationOption DisplaySoftwareCenterOnly

New-CMTaskSequencePhase

使用此 cmdlet 为任务序列创建部署阶段。

New-CMTaskSequencePhase -CollectionName "MyCollection" -PhaseName "MyTSPhase" -UserNotification DisplayAll -AllowRemoteDP $true

Get-CMPhase

使用此 cmdlet 获取特定实例或分阶段部署的部署阶段。

Get-CMPhase -Id "66DEDF86-D0CB-457D-88BE-47E3FAC92A47"
$myPhasedDeployment | Get-CMPhase

New-CMApplicationAutoPhasedDeployment

使用此 cmdlet 通过生成具有相同设置的两个阶段来为应用程序创建分阶段部署。

New-CMApplicationAutoPhasedDeployment -ApplicationName "myApp" -Name "myPDName" -FirstCollectionID "SMSDM001" -SecondCollectionID "SMSDM003" -CriteriaOption Compliance -CriteriaValue 1 -BeginCondition AfterPeriod -DaysAfterPreviousPhaseSuccess 2 -ThrottlingDays 3 -InstallationChoice AfterPeriod -DeadlineUnit Hours -DeadlineValue 4 -Description "MyDescription"
 
$myApp | New-CMApplicationAutoPhasedDeployment -Name "myPDName" -FirstCollectionID "SMSDM001" -SecondCollectionID "SMSDM003" -CriteriaOption Compliance -CriteriaValue 1 -BeginCondition AfterPeriod -DaysAfterPreviousPhaseSuccess 2 -ThrottlingDays 3 -InstallationChoice AfterPeriod -DeadlineUnit Hours -DeadlineValue 4 -Description "MyDescription"

New-CMSoftwareUpdateAutoPhasedDeployment

使用此 cmdlet 通过生成具有相同设置的两个阶段来为软件更新创建分阶段部署。

New-CMSoftwareUpdateAutoPhasedDeployment -SoftwareUpdateName "myUpdateName" -Name "myPDName" -FirstCollectionID "SMSDM001" -SecondCollectionID "SMSDM003" -CriteriaOption Compliance -CriteriaValue 1 -BeginCondition AfterPeriod -DaysAfterPreviousPhaseSuccess 2 -ThrottlingDays 3 -InstallationChoice AfterPeriod -DeadlineUnit Hours -DeadlineValue 4 -Description "MyDescription"
$myUpdate | New-CMSoftwareUpdateAutoPhasedDeployment -Name "myPDName" -FirstCollectionID "SMSDM001" -SecondCollectionID "SMSDM003" -CriteriaOption Compliance -CriteriaValue 1 -BeginCondition AfterPeriod -DaysAfterPreviousPhaseSuccess 2 -ThrottlingDays 3 -InstallationChoice AfterPeriod -DeadlineUnit Hours -DeadlineValue 4 -Description "MyDescription"

New-CMSoftwareUpdateManualPhasedDeployment

使用此 cmdlet 为软件更新创建分阶段部署。 首先需要使用 cmdlet 添加新的自定义部署阶段New-CMSoftwareUpdatePhase。

$phase1 = New-CMSoftwareUpdatePhase -CollectionId "SMSDM001" -PhaseName "test01" -UserNotificationOption DisplaySoftwareCenterOnly
$phase2 = New-CMSoftwareUpdatePhase -CollectionId "SMSDM003" -PhaseName "test02" -UserNotificationOption DisplaySoftwareCenterOnly
New-CMSoftwareUpdateManualPhasedDeployment -SoftwareUpdateNames ("myUpdateA", "myUpdateB") -Name "myPhaseDeployment" -AddPhases ($phase1, $phase2)
 
$phase3 = New-CMSoftwareUpdatePhase -CollectionId "SMSDM001" -PhaseName "test03" -UserNotificationOption DisplaySoftwareCenterOnly
$phase4 = New-CMSoftwareUpdatePhase -CollectionId "SMSDM003" -PhaseName "test04" -UserNotificationOption DisplaySoftwareCenterOnly
New-CMSoftwareUpdateManualPhasedDeployment -SoftwareUpdateGroupName "myGroup" -Name "myPhaseDeploymentForGroup" -AddPhases ($phase3, $phase4)

New-CMTaskSequenceAutoPhasedDeployment

使用此 cmdlet 通过生成具有相同设置的两个阶段来为任务序列创建分阶段部署。

New-CMTaskSequenceAutoPhasedDeployment -TaskSequenceName "myTaskSequenceName" -Name "myPDName" -FirstCollectionID "SMSDM001" -SecondCollectionID "SMSDM003" -CriteriaOption Compliance -CriteriaValue 1 -BeginCondition AfterPeriod -DaysAfterPreviousPhaseSuccess 2 -ThrottlingDays 3 -InstallationChoice AfterPeriod -DeadlineUnit Hours -DeadlineValue 4 -Description "MyDescription"
 
$myTS | New-CMTaskSequenceAutoPhasedDeployment -Name "myPDName" -FirstCollectionID "SMSDM001" -SecondCollectionID "SMSDM003" -CriteriaOption Compliance -CriteriaValue 1 -BeginCondition AfterPeriod -DaysAfterPreviousPhaseSuccess 2 -ThrottlingDays 3 -InstallationChoice AfterPeriod -DeadlineUnit Hours -DeadlineValue 4 -Description "MyDescription"

New-CMTaskSequenceManualPhasedDeployment

使用此 cmdlet 为任务序列创建分阶段部署。 首先需要使用 cmdlet 添加新的自定义部署阶段New-CMTaskSequencePhase。

$phase1 = New-CMTaskSequencePhase -CollectionId "SMSDM001" -PhaseName "test01" -UserNotification DisplayAll
$phase2 = New-CMTaskSequencePhase -CollectionId "SMSDM003" -PhaseName "test02" -UserNotification HideAll
New-CMTaskSequenceManualPhasedDeployment -TaskSequenceName "myTaskSequence" -Name "phasedDeployment" -AddPhases ($phase1, $phase2)
 
$phase3 = New-CMTaskSequencePhase -CollectionId "SMSDM001" -PhaseName "test03" -UserNotification DisplayAll
$phase4 = New-CMTaskSequencePhase -CollectionId "SMSDM003" -PhaseName "test04" -UserNotification HideAll
$myTaskSequence | New-CMTaskSequenceManualPhasedDeployment -Name "phasedDeployment" -AddPhases ($phase3, $phase4)

Get-CMApplicationPhasedDeployment

使用此 cmdlet 获取应用程序的分阶段部署。

Get-CMApplicationPhasedDeployment -Name "myPhasedDeploymentName"
 
Get-CMApplicationPhasedDeployment -ApplicationName "myApplicationName"

Get-CMSoftwareUpdatePhasedDeployment

使用此 cmdlet 获取软件更新的分阶段部署。

Get-CMSoftwareUpdatePhasedDeployment -Name "myPhasedDeploymentName"
 
Get-CMSoftwareUpdatePhasedDeployment -SoftwareUpdateName "myUpdateName"

Get-CMTaskSequencePhasedDeployment

使用此 cmdlet 获取任务序列的分阶段部署。

Get-CMTaskSequencePhasedDeployment -Name "myPhasedDeploymentName"
 
Get-CMTaskSequencePhasedDeployment -TaskSequenceName "myTaskSequenceName"

Get-CMPhasedDeploymentStatus

使用此 cmdlet 获取特定分阶段部署的状态。

Get-CMPhasedDeploymentStatus -Name "myPhasedDeploymentName"
 
$myPhasedDeployment | Get-CMPhasedDeploymentStatus -Catalog $catalog

Move-CMPhasedDeploymentToNext

使用此 cmdlet 将指定的分阶段部署移动到下一阶段。

Move-CMPhasedDeploymentToNext -Name "myPhasedDeploymentName"  
 
$myPhasedDeployment | Move-CMPhasedDeploymentToNext -Force

Resume-CMPhasedDeployment

使用此 cmdlet 从挂起状态恢复分阶段部署。

Resume-CMPhasedDeployment -Name "myPhasedDeploymentName"  
 
$myPhasedDeployment | Resume-CMPhasedDeployment -Force

Suspend-CMPhasedDeployment

使用此 cmdlet 暂停指定的分阶段部署。

Suspend-CMPhasedDeployment -Name "myPhasedDeploymentName"
  
$myPhasedDeployment | Suspend-CMPhasedDeployment -Force

Remove-CMApplicationPhasedDeployment

使用此 cmdlet 删除应用程序的分阶段部署。

Remove-CMApplicationPhasedDeployment -ApplicationName "myApplicationName"
 
Remove-CMApplicationPhasedDeployment -Name "myPhasedDeploymentName"
 
$myPhasedDeployment | Remove-CMApplicationPhasedDeployment -Force

Remove-CMSoftwareUpdatePhasedDeployment

使用此 cmdlet 删除软件更新的分阶段部署。

Remove-CMSoftwareUpdatePhasedDeployment -SoftwareUpdateName "mySoftwareUpdateName"
 
Remove-CMSoftwareUpdatePhasedDeployment -SoftwareUpdateGroupName "mySoftwareUpdateGroupName"
 
Remove-CMSoftwareUpdatePhasedDeployment -Name "myPhasedDeploymentName"
 
$myPhasedDeployment | Remove-CMSoftwareUpdatePhasedDeployment -Force

Remove-CMTaskSequencePhasedDeployment

使用此 cmdlet 删除任务序列的分阶段部署。

Remove-CMTaskSequencePhasedDeployment -TaskSequenceName "myTaskSequenceName"
 
Remove-CMTaskSequencePhasedDeployment -Name "myPhasedDeploymentName"
 
$myPhasedDeployment | Remove-CMTaskSequencePhasedDeployment -Force

Add-CMPassiveSite

使用此 cmdlet 添加被动站点。

Add-CMPassiveSite -InputObject $SiteSystem -InstallDirectory $InstallPath -SourceFilePathOption CopySourceFileFromActiveSite
Add-CMPassiveSite -SiteCode $SiteCode -SiteSystemServerName $SiteSystemServerName -InstallDirectory $InstallPath -SourceFilePathOption UseLocalSourceDirectory -LocalSourceDirectory $LocalSourcePath

Get-CMThirdPartyUpdateCategory

使用此 cmdlet 获取第三方更新类别。

Get-CMThirdPartyUpdateCategory
Get-CMThirdPartyUpdateCategory -Catalog $catalog
Get-CMThirdPartyUpdateCategory -CatalogId $catalogId -Id $categoryId
Get-CMThirdPartyUpdateCategory -CatalogName $catalogName -Name $categoryName
$catalog | Get-CMThirdPartyUpdateCategory -ParentId $parentId -PublishOption $publishOption

Move-CMContentLibrary

使用此 cmdlet 在添加被动网站之前移动内容库。

Move-CMContentLibrary -InputObject $Site -NewLocation $NewLocationPath
Move-CMContentLibrary -SiteCode $SiteCode -NewLocation $NewLocationPath

Set-CMThirdPartyUpdateCategory

使用此 cmdlet 修改第三方更新类别。

Set-CMThirdPartyUpdateCategory -Catalog $catalog -Id $categoryId -PublishOption $publishOption -EnableCategories $true
$catalog | Set-CMThirdPartyUpdateCategory -Name $categoryName -PublishOption $publishOption -EnableCategories $true
Set-CMThirdPartyUpdateCategory -CatalogId $catalogId -ParentId $parentId -PublishOption $publishOption -EnableCategories $true
Set-CMThirdPartyUpdateCategory -CatalogName $catalogName -Name $categoryName -ParentId $parentId -PublishOption $publishOption -EnableCategories $true
Set-CMThirdPartyUpdateCategory -Categories $categories -PublishOption $publishOption -EnableCategories $true

已弃用的 cmdlet

已知问题

Cmdlet 更改

已对此版本中的现有 cmdlet 进行了以下更改。 更改可能是新功能、bug 修复或弃用。 某些更改可能会中断。 如果使用本部分中列出的 cmdlet 或功能区域之一,请仔细查看更改,了解这些更改对你的使用有何影响。

Add-CMDeviceCollectionQueryMembershipRule

非中断性更改

为查询规则添加了更多错误处理。

Add-CMMsiDeploymentType

非中断性更改

添加了以下新参数,以便在创建部署类型时配置修复命令和目录选项:

  • RepairCommand
  • RepairWorkingDirectory

已修复的 Bug

创建部署类型时缺少用于配置修复命令和目录选项的参数。

Add-CMScriptDeploymentTypes

重大更改

-ContentLocation 将不再接受空文件夹。

已修复的 Bug

-ContentLocation 不应允许空文件夹。

Add-CMUserCollectionQueryMembershipRule

非中断性更改

为查询规则添加了更多错误处理。

Import-CMSoftwareLicense

非中断性更改

修复了 -Timeout 的参数边界问题。

New-CMApplicationDeployment

非中断性更改

添加了以下新参数,以便在为应用程序创建部署时配置修复应用程序选项:

  • AllowRepairApp

已修复的 Bug

创建应用程序部署时缺少用于配置修复应用程序选项的参数。

New-CMSiteSystem

非中断性更改

更正了对 -SiteSystemServerName 和 -PublicFqdn 的验证。

已修复的 Bug

指定 -SiteSystemServerName 和 -PublicFqdn 的限制错误。

New-CMTSRule

非中断性更改

-ReferencedVariableName 现在接受以下划线开头的变量名称。

已修复的 Bug

-ReferencedVariableName 不允许用户指定以下划线开头的变量名称。

Set-CMApplicationDeployment

非中断性更改

添加了以下新参数,以便在为应用程序设置部署时配置修复应用程序选项:

  • AllowRepairApp

已修复的 Bug

为应用程序设置部署时缺少用于配置修复应用程序选项的参数。

Set-CMMsiDeploymentType

非中断性更改

添加了以下新参数,以便在设置部署类型时配置修复命令和目录选项:

  • RepairCommand
  • RepairWorkingDirectory

已修复的 Bug

设置部署类型时缺少用于配置修复命令和目录选项的参数。

Set-CMSite

非中断性更改

添加了以下新参数,以便重试失败的被动站点的安装:

  • RetryInstallPassiveSite

添加了以下新参数,使你能够将被动站点提升为主动:

  • PromotePassiveSiteToActive

Set-CMScriptDeploymentType

重大更改

-ContentLocation 将不再接受空文件夹。

已修复的 Bug

-ContentLocation 不应允许空文件夹。

Set-CMThirdPartyUpdateCatalog

非中断性更改

  • 该 cmdlet 现在支持为目录设置“同步计划”。
  • 由于本机方法更改而修改了内部函数调用。
示例
Set-CMThirdPartyUpdateCatalog -Name $name –Schedule $schedule