2016-12-29 9 views
0

Я использую VMware vSphere PowerCLI, и для запуска Get-VICommand (а также многих других команд PowerCLI) я должен запустить программу с правами администратора. Однако, если я нахожу ise в PowerCLI, чтобы запустить ISE Windows PowerShell, а затем попытаться запустить Get-VICommand из ISE, команда не будет работать. Я попытался вручную запустить Windows PowerShell ISE в качестве администратора, но я получаю те же результаты.Get-VICommand работает в PowerCLI, но не распознается в Windows PowerShell ISE

Кто-нибудь сталкивался с этой проблемой и нашел способ ее исправить? На данный момент я могу просто запустить все свои команды из PowerCLI, но я предпочел бы использовать ISE, особенно для написания длинных скриптов, содержащих десятки строк.

Я работаю на Windows 7, если это помогает.

ответ

1

Необходимо, чтобы модули PowerCLI загружались в ISE. Это зависит от версии PowerCLI, в которой вы работаете, как вы это делаете. Для того, чтобы начать просто попробовать и запустить Get-Module -ListAvailable или Get-Module -ListAvailable VM* Если вы можете увидеть модули VMware, вы должны быть в состоянии только сделать import-module

Othwerwise вам необходимо получить настройки модулей,

Это может быть сделано несколько способов, кажется как работает эта линия является популярным:

. "C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1"

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

Добавление путь к папке модулей, вероятно, будет хорошей идеей, а также:

$path = [Environment]::GetEnvironmentVariable("PSModulePath") 
$path += ";C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\Modules\" 
[Environment]::SetEnvironmentVariable("PSModulePath",$path) 
+1

Если они используют старую оснастке на основе версии PowerCLI (по-прежнему очень часто), они, возможно, придется использовать 'добавить -psssnapin', а не 'import-module' –