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


Создание сценария из VMM мастера и страницы свойств:

 

Применимо к:System Center 2012 R2 Virtual Machine Manager, System Center 2012 - Virtual Machine Manager

Чтобы помочь приступить к работе со сценариями, в System Center 2012 — Virtual Machine Manager можно создать сценарий, при запуске мастера или обновить свойства в консоли VMM. Можно использовать просмотреть сценарий кнопку Сводка странице каждого мастера в консоли VMM или Свойства страницу, чтобы просмотреть набор командлетов, которая будет выполняться при нажатии кнопки Готово в конце работы мастера или ОК при обновлении свойства. Можно изменить команды при необходимости и затем сохраните файл с расширением .ps1, который указывает на сценарий Windows PowerShell.

Изменение созданного сценария

Наиболее сформированные скрипты параметр идентификатора командлетов для идентификации конкретных объектов, на которых они принимают действия. Поскольку этот идентификатор относится к этому объекту, может потребоваться разрешить сценарий принимают параметры или использовать Get для получения объекта, чтобы сделать доступными для использования с другими объектами скрипта.

Добавление командлета Get для созданного скрипта

При изменении значения свойства скрипт использует идентификатор для получения объекта для изменения. Например следующий скрипт создается при изменении имени и описания для логическую сеть:

$logicalNetwork = Get-SCLogicalNetwork -ID "7a858ed4-b8d2-4ac8-9dbe-6e6a4388c1e7"
Set-SCLogicalNetwork -Name "Backend" -Description "Backend logical network for Seattle" -LogicalNetwork $logicalNetwork -RunAsynchronously

Чтобы сделать этот скрипт полезен в средах дополнительные, можно заменить параметр ID where предложения. Пример.

$logicalNetwork = @(Get-SCLogicalNetwork | where { $_.Name -like "LogicalNet*" })
Set-SCLogicalNetwork -Name "Backend" -Description "Backend logical network for Seattle" -LogicalNetwork $logicalNetwork[0] -RunAsynchronously

Теперь первая команда получает все логические сети, которые имеют имя, которое начинается с «LogicalNet» и помещает их в массиве. Вторая команда изменяет первый логической сети в массиве, обновление ее имя на «Серверная часть».

Добавление параметров в создаваемый скрипт

Другим способом, облегчающих созданный скрипт является определение параметров в скрипт. Параметры сценария работают как параметры функции. Значения параметров доступны для всех команд в скрипт. При запуске сценария, пользователи сценария введите параметры после имени сценария.

Чтобы добавить параметры в сценарий, используйте инструкцию Param. Инструкция Param должна быть первой инструкцией в сценарий, за исключением комментариев. В следующем примере показано ранее созданный скрипт изменены таким образом, можно назначить имя существующей логической сети и новое имя для логической сети и описание добавлен, при выполнении скрипта.

Param(
   [parameter(Mandatory=$true)]
   [String] $LogicalNetwork = $(throw "A name for an existing logical network is required."),

   [parameter(Mandatory=$true)]
   [String] $NewName = $(throw "A new name for the logical network is required."),

   [parameter(Mandatory=$false)]
   [String] $Description
   )
Set-SCLogicalNetwork -Name $NewName -Description $Description -LogicalNetwork $LogicalNetwork -RunAsynchronously

При выполнении этого сценария, необходимо указать имя существующей логической сети и новое имя для логической сети. Описание является необязательным. Например, если этот скрипт сохраняется как «UpdateLogicalNetworkName.ps1», необходимо ввести следующее в командной строке: .\UpdateLogicalNetworkName.ps1 -LogicalNetwork "LogicalNetwork01" -NewName "Backend" -Description "Backend logical network for Seattle." Если не предоставить значения для LogicalNetwork и NewName, вам предложат ввести их.

Дополнительные сведения о написании сценариев Windows PowerShell см. в разделе about_Scripts.