Invoke-CMScript
Führen Sie ein PowerShell-Skript in Configuration Manager aus.
Syntax
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>]
Beschreibung
Verwenden Sie dieses Cmdlet, um ein PowerShell-Skript in Configuration Manager auszuführen. Diese Skripts werden in Configuration Manager integriert und verwaltet.
Sie können ein Skript erst ausführen, wenn es genehmigt wurde. Verwenden Sie das Cmdlet Approve-CMScript , um Skripts programmgesteuert zu genehmigen.
Weitere Informationen finden Sie unter Erstellen und Ausführen von PowerShell-Skripts über die Configuration Manager-Konsole.
Hinweis
Führen Sie Configuration Manager-Cmdlets auf dem Configuration Manager-Standortlaufwerk aus, z. B PS XYZ:\>
. . Weitere Informationen finden Sie unter Erste Schritte.
Beispiele
Beispiel 1: Ausführen eines Skripts mit seiner ID
Dieser Befehl führt das Skript mit der ID DF8E7546-FD66-4A3D-A129-53AF5AA54F80
aus.
Invoke-CMScript -ScriptGuid "DF8E7546-FD66-4A3D-A129-53AF5AA54F80"
Beispiel 2: Ausführen eines Skripts mithilfe einer Objektvariablen
Der erste Befehl ruft ein Skriptobjekt anhand seiner ID ab und speichert es in der $ScriptObj Variablen. Der zweite Befehl führt das in dieser Variable gespeicherte Skript aus.
$ScriptObj = Get-CMScript -Id "DF8E7546-FD66-4A3D-A129-53AF5AA54F80"
Invoke-CMScript -InputObject $ScriptObj
Beispiel 3: Übergeben von Parametern an das Zielskript
Die erste Zeile speichert Parameter in einer Hashtabelle. Die zweite Zeile führt das Skript auf dem Zielgerät aus und übergibt die Parameter in der Hashtabelle.
$parameters = @{
"FolderName"="c:\test\test1"
"FileName"="test2"
}
Invoke-CMScript -ScriptGuid $scriptGuid -Device (Get-CMDevice -Name $targetPCName) -ScriptParameter $parameters
Parameter
-Collection
Geben Sie ein Auflistungsobjekt an, um dieses Skript auszuführen. Verwenden Sie zum Abrufen dieses Objekts das Cmdlet Get-CMCollection .
Typ: | IResultObject |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-CollectionId
Geben Sie die ID einer Sammlung an, um dieses Skript auszuführen.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-CollectionName
Geben Sie den Namen einer Sammlung an, um dieses Skript auszuführen.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Confirm
Fordert Sie vor dem Ausführen des Cmdlets zur Bestätigung auf.
Typ: | SwitchParameter |
Aliase: | cf |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Device
Geben Sie ein Objekt für ein Gerät an, um dieses Skript auszuführen. Verwenden Sie zum Abrufen dieses Objekts das Cmdlet Get-CMDevice .
Typ: | IResultObject[] |
Aliase: | Devices |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-DisableWildcardHandling
Dieser Parameter behandelt Wildcardzeichen als Literalzeichenwerte. Sie können es nicht mit ForceWildcardHandling kombinieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ForceWildcardHandling
Dieser Parameter verarbeitet Wildcardzeichen und kann zu unerwartetem Verhalten führen (nicht empfohlen). Sie können es nicht mit DisableWildcardHandling kombinieren.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-InputObject
Geben Sie ein auszuführende Skriptobjekt an. Verwenden Sie zum Abrufen dieses Objekts das Cmdlet Get-CMScript .
Typ: | IResultObject |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | True |
Platzhalterzeichen akzeptieren: | False |
-PassThru
Gibt ein Objekt zurück, das das Element darstellt, mit dem Sie arbeiten. Standardmäßig generiert dieses Cmdlet möglicherweise keine Ausgabe.
Typ: | SwitchParameter |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ScheduleTime
Geben Sie einen UTC-DateTime-Wert an, um die Ausführung des Skripts für einen späteren Zeitpunkt zu planen.
Typ: | DateTime |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ScriptGuid
Geben Sie die ID des auszuführenden Skripts an. Das Format ist eine Standard-GUID.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ScriptParameter
Gilt für Version 2010 und höher. Verwenden Sie diesen Parameter, um Parameter an das Zielskript zu übergeben. Geben Sie eine Hashtabelle mit den erforderlichen Parametern an. Ein Beispiel für die Verwendung finden Sie unter Beispiele.
Typ: | Hashtable |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-WhatIf
Zeigt, was passieren würde, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.
Typ: | SwitchParameter |
Aliase: | wi |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Eingaben
Microsoft.ConfigurationManagement.ManagementProvider.IResultObject
Ausgaben
System.Object