Get-SCScript
Ottiene oggetti script dalla libreria VMM, che consente di visualizzare o modificare qualsiasi script o di visualizzare, modificare o eseguire uno script di 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
Come illustrato negli esempi, è possibile usare Get-SCScript non solo per recuperare oggetti script, ma anche per visualizzare il contenuto di uno script o per modificare uno script. Inoltre, è possibile eseguire lo script se sono vere: 1) lo script è uno script di Windows PowerShell, 2) è abilitato nel server e 3) si dispone delle autorizzazioni appropriate (vedere l'esempio 5).
Per informazioni sull'abilitazione dello scripting di Windows PowerShell nel server, digitare Get-Help about_Signing
, Get-Help Get-ExecutionPolicy -Detailed
e 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 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 di 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 di Windows PowerShell archiviato in una condivisione di libreria VMM, è necessario assicurarsi 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.
Lo scripting di Windows PowerShell è abilitato. In caso contrario:
Eseguire la shell dei comandi VMM come amministratore.
2. Utilizzare il cmdlet Set-ExecutionPolicy
Per altre informazioni, digitare Get-Help about_Signing
, Get-Help Get-ExecutionPolicy -Detailed
e Get-Help Set-ExecutionPolicy -Detailed
Parametri
-All
Indica che questo cmdlet ottiene tutti gli oggetti subordinati indipendentemente 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.
Tipo: | SwitchParameter |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | 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.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-ID
Specifica l'identificatore numerico come identificatore univoco globale o GUID per un oggetto specifico.
Tipo: | Guid |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-Name
Specifica il nome di un oggetto VMM.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | True |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | 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, è possibile personalizzare la stringa.
Tipo: | String |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | False |
Accettare caratteri jolly: | False |
-VMMServer
Specifica un oggetto server VMM.
Tipo: | ServerConnection |
Posizione: | Named |
Valore predefinito: | None |
Necessario: | False |
Accettare l'input della pipeline: | True |
Accettare caratteri jolly: | False |
Output
Script
Questo cmdlet restituisce un oggetto