Поделиться через


Invoke-CMScript

Запустите сценарий PowerShell в Configuration Manager.

Синтаксис

Invoke-CMScript
      [-Collection <IResultObject>]
      [-CollectionId <String>]
      [-CollectionName <String>]
      [-Device <IResultObject[]>]
      -InputObject <IResultObject>
      [-PassThru]
      [-ScriptParameter <Hashtable>]
      [-DisableWildcardHandling]
      [-ForceWildcardHandling]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Invoke-CMScript
      [-Collection <IResultObject>]
      [-CollectionId <String>]
      [-CollectionName <String>]
      [-Device <IResultObject[]>]
      [-PassThru]
      -ScriptGuid <String>
      [-ScriptParameter <Hashtable>]
      [-DisableWildcardHandling]
      [-ForceWildcardHandling]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Описание

Используйте этот командлет для запуска скрипта PowerShell в Configuration Manager. Эти скрипты интегрируются и управляются в Configuration Manager.

Вы не сможете запустить скрипт, пока он не будет утвержден. Чтобы утвердить скрипты программным способом, используйте командлет Approve-CMScript .

Дополнительные сведения см. в статье Создание и выполнение сценариев PowerShell в консоли Configuration Manager.

Примечание.

Запустите командлеты Configuration Manager с диска сайта Configuration Manager, например PS XYZ:\>. Дополнительные сведения см. в статье Начало работы.

Примеры

Пример 1. Запуск скрипта с использованием его идентификатора

Эта команда запускает скрипт с идентификатором DF8E7546-FD66-4A3D-A129-53AF5AA54F80.

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

Пример 2. Запуск скрипта с помощью объектной переменной

Первая команда получает объект скрипта по его идентификатору и сохраняет его в переменной $ScriptObj . Вторая команда выполняет скрипт, хранящийся в этой переменной.

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

Invoke-CMScript -InputObject $ScriptObj

Пример 3. Передача параметров целевому скрипту

В первой строке параметры хранятся в хэш-таблице. Во второй строке скрипт выполняется на целевом устройстве, передавая параметры в хэш-графике.

$parameters = @{
  "FolderName"="c:\test\test1"
  "FileName"="test2"
}

Invoke-CMScript -ScriptGuid $scriptGuid -Device (Get-CMDevice -Name $targetPCName) -ScriptParameter $parameters

Параметры

-Collection

Укажите объект коллекции для выполнения этого скрипта. Чтобы получить этот объект, используйте командлет Get-CMCollection .

Тип:IResultObject
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-CollectionId

Укажите идентификатор коллекции для выполнения этого скрипта.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-CollectionName

Укажите имя коллекции для выполнения этого скрипта.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Confirm

Перед запуском командлет запросит подтверждение.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Device

Укажите объект для запуска этого скрипта устройством. Чтобы получить этот объект, используйте командлет Get-CMDevice .

Тип:IResultObject[]
Aliases:Devices
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DisableWildcardHandling

Этот параметр обрабатывает подстановочные знаки как литеральные символы. Вы не можете объединить его с ForceWildcardHandling.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ForceWildcardHandling

Этот параметр обрабатывает подстановочные знаки и может привести к непредвиденному поведению (не рекомендуется). Его нельзя объединить с DisableWildcardHandling.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-InputObject

Укажите объект скрипта для выполнения. Чтобы получить этот объект, используйте командлет Get-CMScript .

Тип:IResultObject
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-PassThru

Возвращает объект, представляющий элемент, с которым вы работаете. По умолчанию этот командлет не может создавать выходные данные.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ScheduleTime

Укажите значение DATETime в формате UTC, чтобы запланировать выполнение скрипта на более позднее время.

Тип:DateTime
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ScriptGuid

Укажите идентификатор выполняемого скрипта. Формат является стандартным GUID.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ScriptParameter

Применяется к версии 2010 и более поздним. Используйте этот параметр для передачи параметров целевому скрипту. Укажите хэш-строку с необходимыми параметрами. Пример использования см. в разделе Примеры.

Тип:Hashtable
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-WhatIf

Показывает, что произойдет при запуске этого командлета. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

Выходные данные

System.Object