配置和使用适用于 Windows PowerShell 的 Service Manager cmdlet

本文介绍 Windows PowerShell 命令行接口的 Service Manager cmdlet。

必须先将执行策略设置为 RemoteSigned,然后才能在 Service Manager 的 Windows PowerShell 命令行接口中运行任何命令。 在运行数据仓库 cmdlet 之前,必须手动导入数据仓库 cmdlet 模块。

Service Manager cmdlet 在以下两个模块中实现:

  • System.Center.Service.Manager。 每次打开 Service Manager Windows PowerShell 会话时,都会自动导入此模块。

  • Microsoft.EnterpriseManagement.Warehouse.Cmdlet。 必须手动导入此模块。

Service Manager cmdlet 入门

Windows PowerShell 是一个 Windows 命令行 shell,其中包含交互式提示和脚本环境。 Windows PowerShell 使用 cmdlet 操作 Windows PowerShell 对象。 Service Manager 包括许多 cmdlet,你可以使用这些 cmdlet 执行各种与 Service Manager 相关的任务,而无需使用 Service Manager 控制台。 例如,可以使用 Import-SCSMManagementPack cmdlet 导入管理包。

Service Manager cmdlet 在下面列出的两个模块中交付。 在 Service Manager 中,这些 cmdlet 模块未安装在 $env:PSModulePath 变量中列出的典型路径中。 因此,如果运行 Get-Module -List cmdlet,则不会列出 Service Manager 模块。

  • 管理员 cmdlet:System.Center.Service.Manager 模块,其中包含常见管理任务所需的 cmdlet。

  • 数据仓库 cmdlet:Microsoft.EnterpriseManagement.Warehouse.Cmdlet 模块,其中包含在 Service Manager 数据仓库上运行所需的 cmdlet。

数据仓库 cmdlet 在数据仓库数据库上运行,可以在 Service Manager 管理服务器或数据仓库管理服务器上运行它们。

从 Windows PowerShell 命令返回的数据可能包含比在默认 Windows PowerShell 命令窗口中显示的更多信息。 建议增加命令窗口的宽度:右键单击标题栏,选择“属性,然后在“布局”选项卡中将屏幕缓冲区大小宽度设置为 120。

以下过程可帮助你开始使用 Service Manager cmdlet。

从 Service Manager 控制台打开 Service Manager Windows PowerShell 会话

  1. 在 Service Manager 控制台中,选择“ 管理”。

  2. “任务 ”窗格中,选择“ 启动 PowerShell 会话”。

管理员 cmdlet 模块会自动在此会话中预先导入。

从 Windows 打开 Service Manager Windows PowerShell 会话

  1. 在承载 Service Manager 管理服务器的计算机上,在任务栏上,选择“开始”,指向“所有程序”,然后选择Microsoft System Center

  2. 选择 Service Manager <版本>,然后选择 Service Manager Shell

管理员 cmdlet 模块会自动在此会话中预先导入。

列出所有 Service Manager cmdlet

  1. 打开 Service Manager Windows PowerShell 会话。

  2. 若要列出管理员模块中包含的 cmdlet,请在 Service Manager Windows PowerShell 会话中输入以下内容,然后按 Enter:

    Get-Command -module System.Center.Service.Manager
    
  3. 若要列出数据仓库模块中包含的 cmdlet,请在 Service Manager Windows PowerShell 会话中输入以下内容,然后按 Enter:

    Get-Command -module Microsoft.EnterpriseManagement.Warehouse.Cmdlets
    

获取 cmdlet 的帮助

  1. 打开 Service Manager Windows PowerShell 会话。

  2. 现在可以访问现装的帮助,也可以使用 -online 参数访问最新的联机帮助:

    • 开箱即用的帮助:键入以下命令。 将 cmdlet-name 替换为要获取帮助的 cmdlet 的名称,例如 Import-SCSMManagementPack

      Get-help <cmdlet-name> -detailed
      
    • 联机、最新的帮助:键入以下命令,然后按 Enter:

      Get-help <cmdlet-name> -online
      

      此命令使用 -online 参数访问 cmdlet 的最新联机帮助。 它将打开 Web 浏览器,并显示可用于 cmdlet 名称的在线帮助。

Service Manager cmdlet 列表

Service Manager 支持以下 Windows PowerShell cmdlet,这些 cmdlet 在两个模块中实现:管理员模块和数据仓库模块。

System.Center.Service.Manager 模块中的管理员 cmdlet

Cmdlet 说明
Add-SCSMAllowListClass 将指定的类添加到 Service Manager Operations Manager CI 连接器在同步期间使用的类的“允许”列表。
Export-SCSMManagementPack 将管理包导出为有效的 XML 格式的文件,稍后可以导入 Service Manager 或 Operations Manager。
Get-SCSMAllowList 检索 Service Manager Operations Manager CI 连接器在同步期间使用的类的“允许”列表。
Get-SCSMAnnouncement 检索 Service Manager 中定义的公告。
Get-SCSMChannel 检索 Service Manager 中定义的电子邮件通知通道。
Get-SCSMClass 检索类。
Get-SCSMClassInstance 检索类实例对象。
Get-SCSMCommand
Get-SCSMConnector 检索 Service Manager 中定义的连接器。
Get-SCSMDCMWorkflow 检索 Service Manager 中定义的所需配置管理工作流的列表。
Get-SCSMDeletedItem 检索已在 Service Manager 中标记为要删除的项。
Get-SCSMDiscovery 从 Operations Manager 和 Service Manager 检索发现信息。
Get-SCSMEmailTemplate 检索 Service Manager 中定义的电子邮件模板。
Get-SCSMEmailTemplateContent 检索 Service Manager 电子邮件模板的内容。
Get-SCSMGroup 从 Operations Manager 和 Service Manager 检索组。
Get-SCSMManagementGroupConnection 检索所有管理组连接,包括这些连接的 IsActive 状态。 只有一个连接将它的 IsActive 状态设置为 True,因为任何时候只能有一个连接处于活动状态。
Get-SCSMManagementPack 检索表示已导入的管理包的对象。
Get-SCSMObjectTemplate 检索对象模板。
Get-SCSMQueue 检索 Service Manager 中定义的队列。
Get-SCSMRelationship 从 Operations Manager 和 Service Manager 检索有关关系对象的信息。
Get-SCSMRelationshipInstance 从 Operations Manager 和 Service Manager 检索关系实例。
Get-SCSMRunAsAccount 检索运行方式帐户。
Get-SCSMSetting 检索 System Center Service Manager 的配置设置。
Get-SCSMSubscription 检索 Service Manager 中配置的订阅。
Get-SCSMTask 检索 Service Manager 中定义的任务。
Get-SCSMUser 检索 Service Manager 中定义的用户。
Get-SCSMUserRole 检索 Service Manager 中定义的用户角色。
Get-SCSMView 检索 Service Manager 中定义的视图。
Get-SCSMWorkflow 检索 Service Manager 工作流的配置信息。
Get-SCSMWorkflowStatus 检索 Service Manager 中工作流的状态。
Import-SCSMInstance 将对象和关系从逗号分隔的值(.csv)文件导入 Service Manager。
Import-SCSMManagementPack 导入管理包。
New-SCOrchestratorConnector 创建新的 Service Manager Orchestrator 连接器。
New-SCRelationshipInstance 创建关系的实例。
New-SCSMADConnector 创建新的 Active Directory 连接器。
New-SCSMAlertRule 创建一个警报规则,用于 Service Manager 中的 Operations Manager 警报连接器。
New-SCSMAnnouncement 在 Service Manager 中创建新的公告。
New-SCSMClassInstance 将类实例添加到数据库。
New-SCSMCMConnector 在 Service Manager 中创建新的 Configuration Manager 连接器。
New-SCSMDCMWorkflow 在 Service Manager 中创建新的所需配置管理工作流。
New-SCSMEmailTemplate 为 Service Manager 创建新的电子邮件模板。
New-SCSMManagementGroupConnection 为指定的管理组创建新连接。 创建的最新管理组连接是 Get-cmdlet 默认使用的活动连接,在该连接中未指定 ComputerNameCredentialSCSession 参数。
New-SCSMManagementPack 创建新的管理包。
New-SCSMManagementPackBundle 捆绑单个管理包及其资源,创建新的管理包捆绑包。
New-SCSMOMAlertConnector 在 Service Manager 中创建新的 Operations Manager 警报连接器。
New-SCSMOMConfigurationItemConnector 在 Service Manager 中创建新的 Operations Manager CI 连接器。
New-SCSMRunAsAccount 创建新的运行方式帐户。
New-SCSMSubscription 在 Service Manager 中创建新订阅。
New-SCSMUserRole 在 Service Manager 中创建新的用户角色。
New-SCSMWorkflow 在 Service Manager 中创建新工作流。
New-SCVMMConnector 创建新的 Service Manager Virtual Machine Manager 连接器。
Protect-SCSMManagementPack 密封管理包,防止对其进行修改。
Remove-SCSMAllowListClass 从 Service Manager 中的 Operations Manager CI 连接器在同步期间使用的类的“允许”列表中删除指定的类。
Remove-SCSMAnnouncement 从 Service Manager 中删除公告。
Remove-SCSMClassInstance 删除配置项对象的实例。
Remove-SCSMConnector 从 Service Manager 中删除连接器。
Remove-SCSMDCMWorkflow 从 Service Manager 中删除所需的配置管理工作流。
Remove-SCSMEmailTemplate 从 Service Manager 中删除电子邮件模板。
Remove-SCSMManagementGroupConnection 删除管理组连接。
Remove-SCSMManagementPack 删除管理包。
Remove-SCSMRunAsAccount 删除运行方式帐户。
Remove-SCSMSubscription 从 Service Manager 中删除订阅。
Remove-SCSMUserRole 从 Service Manager 中删除用户角色。
Remove-SCSMWorkflow 从 Service Manager 中删除工作流。
Reset-SCSMAllowList 将 Service Manager 中的 Operations Manager CI 连接器使用的类的“允许”列表重置为默认的“允许”列表。
Restore-SCSMDeletedItem 还原以前在 Service Manager 中删除的项目。
Set-SCSMChannel 在 Service Manager 中设置电子邮件通知通道的属性。
Set-SCSMManagementGroupConnection 将指定的连接设置为活动连接。 活动连接是在未指定 -ComputerName-Credential-SCSession 参数的情况下运行 Get- cmdlet 时隐式使用的连接。 在任何时候只能有一个连接处于活动状态,默认情况下,活动连接是使用 New-SCManagementGroupConnection cmdlet 创建的最后一个连接。
Start-SCSMConnector 启动 Service Manager 连接器。
Test-SCSMManagementPack 测试管理包的有效性。
Update-SCSMAnnouncement 更新 Service Manager 公告的属性。
Update-SCSMClassInstance 更新配置项类实例的属性值。
Update-SCSMConnector 更新 Service Manager 连接器的属性。
Update-SCSMDCMWorkflow 更新所需配置管理工作流的属性。
Update-SCSMEmailTemplate 更新电子邮件模板的属性。
Update-SCSMRunAsAccount 更新与运行方式帐户关联的凭据。
Update-SCSMSetting 更新 Service Manager 的配置设置。
Update-SCSMSubscription 更新 Service Manager 中的订阅属性。
Update-SCSMUserRole 设置 Service Manager 用户的 UserRole 属性。
Update-SCSMWorkflow 更新工作流属性。

Microsoft.EnterpriseManagement.Warehouse.Cmdlet 模块中的数据仓库 cmdlet

Cmdlet 说明
Disable-SCDWJob 禁用数据仓库作业以防止其运行。
Disable-SCDWJobSchedule Disable-SCDWJobSchedule cmdlet 禁用数据仓库作业计划,这会导致作业计划停止启动作业。 如果以前启用了作业计划,则禁用作业计划会保留作业计划设置。 若要修改作业计划设置,请运行 Set-SCDWJobSchedule cmdlet。
Disable-SCDWSource 启用与指定数据源关联的所有作业。
Enable-SCDWJob 启用数据仓库作业,以便它可以按计划运行。
Enable-SCDWJobSchedule Enable-SCDWJobSchedule cmdlet 允许数据仓库管理员启用作业计划,以便作业按照指定的计划运行。 若要禁用作业计划,请使用 Disable-SCDWJobSchedule cmdlet。
Enable-SCDWSource 启用与指定数据源关联的所有作业。
Get-SCDWEntity 获取数据仓库中存在的事实数据表、维度、表和外线的列表。
Get-SCDWJob 获取所有定期作业(包括提取、转换和加载(ETL)作业的作业状态。
Get-SCDWJobModule 返回指定作业的详细信息。 此信息包括作为作业的一部分执行的作业模块。
Get-SCDWJobSchedule Get-SCDWJobSchedule cmdlet 显示数据仓库作业的计划信息。 可以使用 JobName 参数指定要显示计划信息的作业。 否则, Get-SCDWJobSchedule cmdlet 将显示所有数据仓库作业的计划信息。
Get-SCDWModule
Get-SCDWRetentionPeriod 数据仓库在预定义的保留期后整理行。 此 cmdlet 提供特定实体的保留期(以分钟为单位)。 如果未提供任何实体,则会为所有实体提供默认保留期。
Get-SCDWSource 启用与指定数据源关联的所有作业。
Get-SCDWSourceType 获取可注册到数据仓库的数据源的类型。
Get-SCDWWatermark 获取指定作业模块的最新水印。
New-SCDWSourceType 若要向数据仓库注册源,必须先向数据仓库注册数据源类型。 此 cmdlet 通过导入合适的管理包并执行适当的配置更改来帮助注册新的数据源类型。
Register-SCDWSource 将数据源类型的实例(如 Service Manager、Operations Manager 和 Configuration Manager)注册到数据仓库。
Set-SCDWJobSchedule 设置数据仓库作业的计划。
Set-SCDWRetentionPeriod 为特定数据仓库数据库中的特定事实数据表设置数据保留期(以分钟为单位)或为数据库中的事实数据表设置默认值。
Set-SCDWSource 更新可为数据源实例填充的类和关系的定义。
Set-SCDWWatermark - 设置后续数据处理应继续执行的水印。
Start-SCDWJob 启动数据仓库作业。
Unregister-SCDWManagememtPack
Unregister-SCDWSource 从数据仓库中注销数据源。

后续步骤