次の方法で共有


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 コマンドレットは、仮想マシン マネージャー (VMM) ライブラリからスクリプト オブジェクトを取得します。 スクリプト オブジェクトが表すスクリプト ファイルは、ライブラリ サーバー上のファイル システムに保存されます。 通常、これらのスクリプトは、Windows PowerShell ® スクリプトまたは応答ファイル スクリプト (Sysprep.inf ファイルや Windows セットアップ プログラムに必要な入力を含む Unattend.xml ファイルを含む) のいずれかです。

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

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

例 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 Get-ExecutionPolicy -Detailed」と入力しますGet-Help about_SigningGet-Help Set-ExecutionPolicy -Detailed

パラメーター

-All

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FamilyName

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

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ID

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

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

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

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Release

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

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VMMServer

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

Type:ServerConnection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

出力

Script

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