Approve-CMScript

在 Configuration Manager 中批准 PowerShell 脚本。

语法

Approve-CMScript
       [-Comment <String>]
       -InputObject <IResultObject>
       [-DisableWildcardHandling]
       [-ForceWildcardHandling]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Approve-CMScript
       [-Comment <String>]
       -ScriptGuid <String>
       [-DisableWildcardHandling]
       [-ForceWildcardHandling]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

说明

使用此 cmdlet 在 Configuration Manager 中批准 Powershell 脚本。 这些脚本在 Configuration Manager 中集成和管理。 在获得批准之前,不能在设备上运行脚本。 批准脚本后,若要运行脚本,请使用 Invoke-CMScript cmdlet。

默认情况下,无法批准你创作的脚本。

有关详细信息,请参阅从 Configuration Manager 控制台创建和运行 PowerShell 脚本

注意

从Configuration Manager站点驱动器运行Configuration Manager cmdlet,例如 PS XYZ:\>。 有关详细信息,请参阅 入门

示例

示例 1:使用脚本 ID 批准脚本

此命令批准 ID DF8E7546-FD66-4A3D-A129-53AF5AA54F80为 的脚本。

Approve-CMScript -ScriptGuid "DF8E7546-FD66-4A3D-A129-53AF5AA54F80"

示例 2:使用脚本对象变量批准脚本

第一个命令获取 ID DF8E7546-FD66-4A3D-A129-53AF5AA54F80为 的脚本对象。 然后,它将 对象存储在 $ScriptObj 变量中。

第二个命令批准变量中存储的脚本。

$ScriptObj = Get-CMScript -Id "DF8E7546-FD66-4A3D-A129-53AF5AA54F80"
Approve-CMScript -InputObject $ScriptObj

示例 3:批量批准所有未批准的脚本

此命令获取未批准的Configuration Manager中的所有脚本。 然后,它会循环访问脚本数组中的每个 脚本 。 如果当前用户不是脚本的作者,则会批准该脚本。

$scripts = Get-CMScript -Fast | Where-Object { -not $_.ApprovalState }

$me = $env:userdomain + "\" + $env:username
foreach ( $script in $scripts ) {
  if ( $script.Author -ne $me ) {
    Approve-CMScript -InputObject $script
  }
}

参数

-Comment

指定有关脚本审批的注释。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisableWildcardHandling

此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ForceWildcardHandling

此参数处理通配符,并可能导致意外行为 (不建议) 。 不能将其与 DisableWildcardHandling 结合使用。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

指定要批准的脚本对象。 若要获取此对象,请使用 Get-CMScript cmdlet。

Type:IResultObject
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ScriptGuid

指定要批准的脚本的 ID。 格式是标准 GUID。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

显示在 cmdlet 运行时发生的情况。 cmdlet 不会运行。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

输出

System.Object