Share via


Get-SCScript

Ottiene oggetti script dalla libreria VMM, che consente di visualizzare o modificare qualsiasi script oppure di visualizzare, modificare o eseguire uno script Windows PowerShell se si dispone delle autorizzazioni appropriate.

Sintassi

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>]

Descrizione

Il cmdlet Get-SCScript ottiene oggetti script dalla libreria Virtual Machine Manager (VMM). Il file script rappresentato da un oggetto script è archiviato nel file system o in un server di libreria. In genere, questi script sono Windows PowerShell ® script o script di file di risposte (inclusi i file Sysprep.inf e Unattend.xml, che contengono gli input necessari per il programma di installazione di Windows).

Come illustrato negli esempi, è possibile usare Get-SCScript non solo per recuperare oggetti script, ma anche, se si dispone delle autorizzazioni appropriate, per visualizzare il contenuto di uno script o per modificare uno script. Inoltre, è possibile eseguire lo script se è vero: 1) lo script è uno script Windows PowerShell, 2) è abilitato nel server e 3) si dispone delle autorizzazioni appropriate (vedere l'esempio 5).

Per informazioni sull'abilitazione di script Windows PowerShell nel server, digitare Get-Help about_Signing, Get-Help Get-ExecutionPolicy -Detailede Get-Help Set-ExecutionPolicy -Detailed.

Esempio

Esempio 1: Ottenere tutti gli script archiviati in tutti i server di libreria VMM

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

Questo comando ottiene tutti gli oggetti script archiviati nelle condivisioni di libreria nella libreria VMM in VMMServer01 e quindi visualizza informazioni su questi script all'utente.

Esempio 2: Visualizzare le informazioni specificate su tutti gli script in un server di libreria

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

Questo comando ottiene tutti gli oggetti script archiviati in LibraryServer01 e visualizza il nome, il server di libreria e il percorso di condivisione per questi script all'utente.

Esempio 3: Ottenere tutti gli script con un nome specifico in qualsiasi server di libreria VMM

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

Questo comando ottiene gli oggetti script del file di risposte denominati Sysprep.inf archiviati in qualsiasi server di libreria in VMMServer01.

Nota: per impostazione predefinita, il nome di un oggetto script nella libreria VMM è lo stesso nome, inclusa l'estensione di file, come il nome del file di script effettivo nel server di libreria.

Esempio 4: Visualizzare uno script archiviato nella libreria VMM

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

Il primo comando ottiene l'oggetto script denominato SummarizeVMMInfo.ps1 dalla libreria VMM e archivia l'oggetto nella variabile $Script.

Il secondo comando usa blocco note per aprire lo script in modo che sia possibile visualizzarne il contenuto se si dispone delle autorizzazioni appropriate per leggere lo script.

Nota: se si dispone delle autorizzazioni di scrittura appropriate, è anche possibile modificare lo script e salvare la nuova versione.

Esempio 5: Eseguire uno script Windows PowerShell archiviato nella libreria VMM

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

Il primo comando ottiene l'oggetto script denominato "SummarizeVMMInfo.ps1" dalla libreria VMM e archivia l'oggetto nella variabile $Script.

Il secondo comando usa l'operatore e commerciale (&) per eseguire lo script archiviato in $Script.

Per eseguire uno script Windows PowerShell archiviato in una condivisione di libreria VMM, è necessario verificare quanto segue:

  • Si dispone delle autorizzazioni di lettura ed esecuzione per il file di script.

  • Si è membri del ruolo utente Amministratori VMM.

  • Si dispone delle autorizzazioni per accedere alla condivisione di libreria VMM.

  • Windows PowerShell la creazione di script è abilitata. In caso contrario:

Eseguire la shell dei comandi VMM come amministratore. 2. Utilizzare il cmdlet Set-ExecutionPolicy per impostare i criteri di esecuzione sul livello appropriato per l'ambiente.

Per altre informazioni, digitare Get-Help about_Signing, Get-Help Get-ExecutionPolicy -Detailede Get-Help Set-ExecutionPolicy -Detailed

Parametri

-All

Indica che questo cmdlet ottiene tutti gli oggetti subordinati indipendenti dall'oggetto padre. Ad esempio, il comando Get-SCVirtualDiskDrive -All ottiene tutti gli oggetti unità disco virtuale indipendentemente dall'oggetto macchina virtuale o dall'oggetto modello a cui è associato ogni oggetto unità disco virtuale.

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

-FamilyName

Specifica un nome di famiglia per una risorsa fisica nella libreria VMM. Questo valore viene usato insieme a Release, Namespace e Type per stabilire l'equivalenza tra le risorse della libreria.

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

-ID

Specifica l'identificatore numerico come identificatore univoco globale o GUID per un oggetto specifico.

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

-Name

Specifica il nome di un oggetto di VMM.

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

-Release

Specifica una stringa che descrive il rilascio di una risorsa di libreria. VMM crea automaticamente un valore di versione per ogni risorsa importata nella libreria. Dopo l'importazione della risorsa, la stringa può essere personalizzata.

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

-VMMServer

Specifica un oggetto server Virtual Machine Manager.

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

Output

Script

Questo cmdlet restituisce un oggetto Script .