現在、これはVMware vSpherePowerCLIコマンドプロンプトを起動するための私のパスです。バッチファイルを使用してsample.ps1スクリプトを自動的に実行したいと思います。 sample.ps1をこのパスに組み込み、バッチファイルを作成するにはどうすればよいですか?
C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe
-psc "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -noe -c
". \"C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1\""
Initialize-PowerCLIEnvironment.ps1
を呼び出すコマンドの終わりを置き換え、それをsample.ps1ファイルへのパスに置き換えることをお勧めします。
ほぼ確実に、サンプルファイルの最初の行をInitialize-PowerCLIEnvironment.ps1
への元の参照にする必要があります。これにより、初期化コード(ほとんどの場合関数/コマンドレット定義)が、それに依存する可能性のあるコードの前に実行されます。 。
たとえば、sample.ps1ファイルの内容は次のようになります。
# source vSphere PowerCLI Environment first
. "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1"
# custom code follows
$me = "Hello, vSphere and PowerCLI!!!"
echo off
Title,Sample Script &color 9e
for /f "usebackq delims=$" %%a in (`cd`) do (
set SCRIPTDIR=%%a
)
(Set ScriptFile=%SCRIPTDIR%\Sample.ps1)
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -psc "C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -c ". \"C:\Program Files\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1\";%ScriptFile%"