次の方法で共有


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 ファイルと、Windows セットアップ プログラムに必要な入力を含む Unattend.xml ファイルを含む) です。

例に示すように、Get-SCScript を使用すると、スクリプト オブジェクトを取得するだけでなく、適切なアクセス許可がある場合、スクリプトの内容を表示したり、スクリプトを編集したりすることもできます。 さらに、次のような場合にスクリプトを実行できます。1) スクリプトが Windows PowerShell スクリプトである、2) サーバーでスクリプトが有効になっている、3) 適切なアクセス許可がある (例 5 を参照)。

サーバーで Windows PowerShell スクリプトを有効にする方法については、「Get-Help about_SigningGet-Help Get-ExecutionPolicy -Detailed、および Get-Help Set-ExecutionPolicy -Detailed」と入力します。

例 1: すべての VMM ライブラリ サーバーに格納されているすべてのスクリプトを取得する

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

このコマンドは、VMMServer01 上の VMM ライブラリのライブラリ共有に格納されているすべてのスクリプト オブジェクトを取得し、これらのスクリプトに関する情報をユーザーに表示します。

例 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" }

このコマンドは、VMMServer01 上の任意のライブラリ サーバーに格納されている Sysprep.inf という名前の応答ファイル スクリプト オブジェクトを取得します。

注: 既定では、VMM ライブラリ内のスクリプト オブジェクトの名前は、ファイル拡張子を含め、ライブラリ サーバー上の実際のスクリプト ファイルの名前と同じ名前になります。

例 4: VMM ライブラリに格納されているスクリプトを表示する

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

最初のコマンドは、VMM ライブラリから SummarizeVMMInfo.ps1 という名前のスクリプト オブジェクトを取得し、そのオブジェクトを $Script 変数に格納します。

2 番目のコマンドでは、メモ帳を使用してスクリプトを開き、スクリプトを読み取る適切なアクセス許可がある場合にその内容を表示できるようにします。

注: 適切な書き込みアクセス許可がある場合は、スクリプトを編集して新しいバージョンを保存することもできます。

例 5: VMM ライブラリに格納されている Windows PowerShell スクリプトを実行する

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

最初のコマンドは、VMM ライブラリから "SummarizeVMMInfo.ps1" という名前のスクリプト オブジェクトを取得し、そのオブジェクトを $Script 変数に格納します。

2 番目のコマンドでは、アンパサンド (&) 演算子を使用して、$Scriptに格納されているスクリプトを実行します。

VMM ライブラリ共有に格納されている Windows PowerShell スクリプトを実行するには、次のことを確認する必要があります。

  • スクリプト ファイルに対する読み取りと実行のアクセス許可があります。

  • あなたは VMM 管理者ユーザー ロールのメンバーです。

  • VMM ライブラリ共有にアクセスするためのアクセス許可があります。

  • Windows PowerShell スクリプトが有効になっています。 そうでない場合:

管理者として VMM コマンド シェルを実行します。 2. Set-ExecutionPolicy コマンドレットを使用して、実行ポリシーを環境に適したレベルに設定します。

詳細については、「Get-Help about_SigningGet-Help Get-ExecutionPolicy -Detailed、および Get-Help Set-ExecutionPolicy -Detailed」と入力します。

パラメーター

-All

このコマンドレットは、親オブジェクトに依存しないすべての下位オブジェクトを取得することを示します。 たとえば、コマンド Get-SCVirtualDiskDrive -All は、各仮想ディスク ドライブ オブジェクトが関連付けられている仮想マシン オブジェクトまたはテンプレート オブジェクトに関係なく、すべての仮想ディスク ドライブ オブジェクトを取得します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-FamilyName

VMM ライブラリ内の物理リソースのファミリ名を指定します。 この値は、ライブラリ リソース間の等価性を確立するために、Release、Namespace、Type と組み合わせて使用されます。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ID

特定のオブジェクトのグローバル一意識別子 (GUID) として数値識別子を指定します。

型:Guid
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Name

VMM オブジェクトの名前を指定します。

型:String
配置:Named
規定値:None
必須:True
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Release

ライブラリ リソースのリリースを記述する文字列を指定します。 VMM は、ライブラリにインポートされるすべてのリソースのリリース値を自動的に作成します。 リソースがインポートされたら、文字列をカスタマイズできます。

型:String
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-VMMServer

VMM サーバー オブジェクトを指定します。

型:ServerConnection
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

出力

Script

このコマンドレットは、Script オブジェクトを返します。