Condividi tramite


Invoke-CMScript

Eseguire uno script di PowerShell in Configuration Manager.

Sintassi

Invoke-CMScript
      [-Collection <IResultObject>]
      [-CollectionId <String>]
      [-CollectionName <String>]
      [-Device <IResultObject[]>]
      -InputObject <IResultObject>
      [-PassThru]
      [-ScriptParameter <Hashtable>]
      [-DisableWildcardHandling]
      [-ForceWildcardHandling]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Invoke-CMScript
      [-Collection <IResultObject>]
      [-CollectionId <String>]
      [-CollectionName <String>]
      [-Device <IResultObject[]>]
      [-PassThru]
      -ScriptGuid <String>
      [-ScriptParameter <Hashtable>]
      [-DisableWildcardHandling]
      [-ForceWildcardHandling]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Descrizione

Usare questo cmdlet per eseguire uno script di PowerShell in Configuration Manager. Questi script sono integrati e gestiti in Configuration Manager.

Non è possibile eseguire uno script finché non viene approvato. Per approvare gli script a livello di codice, usare il cmdlet Approve-CMScript .

Per altre informazioni, vedere Creare ed eseguire script di PowerShell dalla console di Configuration Manager.

Nota

Eseguire i cmdlet di Configuration Manager dall'unità del sito di Configuration Manager, ad esempio PS XYZ:\>. Per altre informazioni, vedere Introduzione.

Esempio

Esempio 1: Eseguire uno script usando il relativo ID

Questo comando esegue lo script con ID DF8E7546-FD66-4A3D-A129-53AF5AA54F80.

Invoke-CMScript -ScriptGuid "DF8E7546-FD66-4A3D-A129-53AF5AA54F80"

Esempio 2: Eseguire uno script usando una variabile oggetto

Il primo comando ottiene un oggetto script in base al relativo ID e lo archivia nella variabile $ScriptObj . Il secondo comando esegue lo script archiviato in tale variabile.

$ScriptObj = Get-CMScript -Id "DF8E7546-FD66-4A3D-A129-53AF5AA54F80"

Invoke-CMScript -InputObject $ScriptObj

Esempio 3: Passare i parametri allo script di destinazione

La prima riga archivia i parametri in una tabella hash. La seconda riga esegue lo script nel dispositivo di destinazione, passando i parametri nella tabella hash.

$parameters = @{
  "FolderName"="c:\test\test1"
  "FileName"="test2"
}

Invoke-CMScript -ScriptGuid $scriptGuid -Device (Get-CMDevice -Name $targetPCName) -ScriptParameter $parameters

Parametri

-Collection

Specificare un oggetto raccolta per eseguire questo script. Per ottenere questo oggetto, usare il cmdlet Get-CMCollection .

Tipo:IResultObject
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-CollectionId

Specificare l'ID di una raccolta per eseguire questo script.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-CollectionName

Specificare il nome di una raccolta per eseguire questo script.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Confirm

Richiede la conferma prima di eseguire il cmdlet.

Tipo:SwitchParameter
Alias:cf
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Device

Specificare un oggetto per un dispositivo per eseguire questo script. Per ottenere questo oggetto, usare il cmdlet Get-CMDevice .

Tipo:IResultObject[]
Alias:Devices
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DisableWildcardHandling

Questo parametro considera i caratteri jolly come valori letterali. Non è possibile combinarlo con ForceWildcardHandling.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ForceWildcardHandling

Questo parametro elabora caratteri jolly e può causare un comportamento imprevisto (non consigliato). Non è possibile combinarlo con DisableWildcardHandling.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-InputObject

Specificare un oggetto script da eseguire. Per ottenere questo oggetto, usare il cmdlet Get-CMScript .

Tipo:IResultObject
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-PassThru

Restituisce un oggetto che rappresenta l'elemento con cui si sta lavorando. Per impostazione predefinita, questo cmdlet potrebbe non generare alcun output.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ScheduleTime

Specificare un valore DateTime UTC per pianificare l'esecuzione dello script per un secondo momento.

Tipo:DateTime
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ScriptGuid

Specificare l'ID dello script da eseguire. Il formato è un GUID standard.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ScriptParameter

Si applica alla versione 2010 e successive. Usare questo parametro per passare i parametri allo script di destinazione. Specificare una tabella hash con i parametri obbligatori. Per un esempio di utilizzo, vedere Esempi.

Tipo:Hashtable
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-WhatIf

Mostra cosa accade se viene eseguito il cmdlet. Il cmdlet non viene eseguito.

Tipo:SwitchParameter
Alias:wi
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

Output

System.Object