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


Get-SCScript

Возвращает объекты скриптов из библиотеки VMM, которая позволяет просматривать или изменять любой скрипт, а также просматривать, редактировать или запускать скрипт Windows PowerShell, если у вас есть соответствующие разрешения.

Синтаксис

Get-SCScript
   [-VMMServer <ServerConnection>]
   [-All]
   [<CommonParameters>]
Get-SCScript
   [-VMMServer <ServerConnection>]
   -Name <String>
   [<CommonParameters>]
Get-SCScript
   [-VMMServer <ServerConnection>]
   [-Release <String>]
   -FamilyName <String>
   [<CommonParameters>]
Get-SCScript
   [-VMMServer <ServerConnection>]
   [-ID <Guid>]
   [<CommonParameters>]

Описание

Командлет Get-SCScript получает объекты скриптов из библиотеки Virtual Machine Manager (VMM). Файл скрипта, представляющий объект скрипта, хранится в файловой системе на сервере библиотеки. Как правило, эти скрипты являются скриптами Windows PowerShell® или скриптами файлов ответа (включая Sysprep.inf и Unattend.xml файлы, содержащие входные данные, необходимые для программы установки Windows).

Как показано в примерах, можно использовать Get-SCScript не только для извлечения объектов скриптов, но и для просмотра содержимого скрипта или редактирования скрипта. Кроме того, можно запустить сценарий, если это верно: 1) скрипт является скриптом Windows PowerShell, 2) включен на сервере, а 3) у вас есть соответствующие разрешения (см. пример 5).

Сведения о включении скриптов Windows PowerShell на сервере введите Get-Help about_Signing, Get-Help Get-ExecutionPolicy -Detailedи Get-Help Set-ExecutionPolicy -Detailed.

Примеры

Пример 1. Получение всех скриптов, хранящихся на всех серверах библиотек VMM

PS C:\> Get-SCScript -VMMServer "VMMServer01.Contoso.com"

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

Пример 2. Отображение указанных сведений обо всех скриптах на сервере библиотеки

PS C:\> Get-SCScript -VMMServer "VMMServer01.Contoso.com" | where { $_.LibraryServer.Name -eq "LibraryServer01.Contoso.com" } | Format-List -Property Name, LibraryServer, SharePath

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

Пример 3. Получение всех скриптов с определенным именем на любом сервере библиотекИ VMM

PS C:\> Get-SCScript -VMMServer "VMMServer1.Contoso.com" | where { $_.Name -eq "Sysprep.inf" }

Эта команда получает объекты скрипта файла ответа с именем Sysprep.inf, хранящиеся на любом сервере библиотеки на VMMServer01.

Примечание. По умолчанию имя объекта скрипта в библиотеке VMM совпадает с именем, включая расширение файла, как имя фактического файла скрипта на сервере библиотеки.

Пример 4. Просмотр скрипта, хранящегося в библиотеке VMM

PS C:\> $Script = Get-SCScript | where { $_.Name -eq "SummarizeVMMInfo.ps1"}
PS C:\> Notepad.exe $Script.SharePath

Первая команда получает объект скрипта с именем SummarizeVMMInfo.ps1 из библиотеки VMM и сохраняет объект в переменной $Script.

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

Примечание. Если у вас есть соответствующие разрешения на запись, можно также изменить сценарий и сохранить новую версию.

Пример 5. Запуск скрипта Windows PowerShell, хранящегося в библиотеке VMM

PS C:\> $Script = Get-SCScript | where { $_.Name -eq "SummarizeVMMInfo.ps1" }
PS C:\> &$Script.SharePath

Первая команда получает объект скрипта с именем "SummarizeVMMInfo.ps1" из библиотеки VMM и сохраняет объект в переменной $Script.

Вторая команда использует оператор амперсанда (&) для запуска скрипта, хранящегося в $Script.

Чтобы запустить скрипт Windows PowerShell, хранящийся в общей папке библиотеки VMM, необходимо убедиться в следующем:

  • У вас есть разрешения на чтение и выполнение файла скрипта.

  • Вы являетесь членом роли пользователя "Администраторы VMM".

  • У вас есть разрешения на доступ к общей папке библиотеки VMM.

  • Скрипты Windows PowerShell включены. Если это не так:

Запустите командную оболочку VMM от имени администратора. 2. Используйте командлет Set-ExecutionPolicy, чтобы задать политику выполнения на соответствующий уровень для вашей среды.

Дополнительные сведения см. введите Get-Help about_Signing, Get-Help Get-ExecutionPolicy -Detailedи Get-Help Set-ExecutionPolicy -Detailed

Параметры

-All

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

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

-FamilyName

Указывает имя семейства для физического ресурса в библиотеке VMM. Это значение используется в сочетании с выпуском, пространством имен и типом для установления эквивалентности между ресурсами библиотеки.

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

-ID

Задает числовый идентификатор в виде глобально уникального идентификатора или GUID для определенного объекта.

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

-Name

Указывает имя объекта VMM.

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

-Release

Указывает строку, описывающую выпуск ресурса библиотеки. VMM автоматически создает значение выпуска для каждого ресурса, импортированного в библиотеку. После импорта ресурса можно настроить строку.

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

-VMMServer

Указывает объект сервера VMM.

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

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

Script

Этот командлет возвращает объект Script.