Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: Configuration Manager (Current Branch)
Configuration Manager verfügt über eine integrierte Möglichkeit zum Ausführen von PowerShell-Skripts. PowerShell hat den Vorteil, dass komplexe automatisierte Skripts erstellt werden, die verstanden und für eine größere Community freigegeben werden. Die Skripts vereinfachen die Erstellung benutzerdefinierter Tools zum Verwalten von Software und ermöglichen es Ihnen, alltägliche Aufgaben schnell zu erledigen, sodass Sie große Aufgaben einfacher und konsistenter erledigen können.
Hinweis
In Version 2006 und früher aktiviert Configuration Manager dieses optionale Feature nicht standardmäßig. Sie müssen dieses Feature aktivieren, bevor Sie es verwenden können. Weitere Informationen finden Sie unter Aktivieren optionaler Features aus Updates.
Mit dieser Integration in Configuration Manager können Sie die Funktion "Skripts ausführen" für folgende Dinge verwenden:
- Erstellen und bearbeiten Sie Skripts zur Verwendung mit Configuration Manager.
- Verwalten Sie die Skriptverwendung über Rollen und Sicherheitsbereiche.
- Ordnerunterstützung für Skripts.
- Führen Sie Skripts für Sammlungen oder einzelne lokal verwaltete Windows-PCs aus.
- Planen Sie die Laufzeit von Skripts in UTC auf Sammlungen oder einzelnen lokal verwalteten Windows-PCs.
- Erhalten Sie schnell aggregierte Skriptergebnisse von Clientgeräten.
- Überwachen Sie die Skriptausführung, und zeigen Sie Berichtsergebnisse aus der Skriptausgabe an.
Warnung
- Angesichts der Leistungsfähigkeit von Skripts erinnern wir Sie daran, sie bewusst und vorsichtig zu verwenden. Wir haben zusätzliche Sicherheitsvorkehrungen getroffen, um Sie zu unterstützen. Getrennte Rollen und Bereiche Überprüfen Sie vor dem Ausführen die Genauigkeit von Skripts, und vergewissern Sie sich, dass sie aus einer vertrauenswürdigen Quelle stammen, um eine unbeabsichtigte Skriptausführung zu verhindern. Achten Sie auf erweiterte Zeichen oder andere Verschleierungen, und informieren Sie sich über die Sicherung von Skripts. Weitere Informationen zur sicheren Verwendung von PowerShell-Skripts
- Bestimmte Antischadsoftware kann versehentlich Ereignisse für die Configuration Manager Run Scripts oder CMPivot Features auslösen. Es wird empfohlen, %windir%\CCM\ScriptStore auszuschließen, damit die Antischadsoftware die Ausführung dieser Features ohne Beeinträchtigungen zulässt.
Voraussetzungen
- Um PowerShell-Skripts ausführen zu können, muss auf dem Client PowerShell 3.0 installiert sein. Enthält ein Skript, das Sie ausführen, jedoch Funktionen aus einer späteren Version von PowerShell, muss auf dem Client, auf dem Sie das Skript ausführen, diese Version von PowerShell ausgeführt werden.
- Configuration Manager-Clients müssen den Client ab Version 1706 ausführen, um Skripts ausführen zu können.
- Um Skripts verwenden zu können, müssen Sie Mitglied der entsprechenden Configuration Manager-Sicherheitsrolle sein.
- Zum Importieren und Erstellen von Skripts: Ihr Konto muss über die Berechtigung zum Erstellen von SMS-Skripts verfügen.
- Um Skripts zu genehmigen oder abzulehnen, muss Ihr Konto über die Berechtigung zum Genehmigen von SMS-Skripts verfügen.
- Zum Ausführen von Skripts muss Ihr Konto über Berechtigungen zum Ausführen von Skripts für Sammlungen verfügen.
Weitere Informationen zu Sicherheitsrollen im Configuration Manager:
Sicherheitsbereiche für Skriptausführungen
Sicherheitsrollen für Skripts
Grundlagen der rollenbasierten Verwaltung.
Begrenzungen
"Skripts ausführen" unterstützt derzeit:
- Skriptsprachen: PowerShell
- Parametertypen: Integer, String und List.
Warnung
Beachten Sie, dass die Verwendung von Parametern eine Angriffsfläche für potenzielle PowerShell-Einschleusungsangriffe eröffnet. Es gibt verschiedene Möglichkeiten, dies zu verhindern und zu umgehen, z. B. die Verwendung regulärer Ausdrücke zum Überprüfen der Parametereingabe oder die Verwendung vordefinierter Parameter. Es ist eine gängige bewährte Methode, keine Geheimnisse in Ihre PowerShell-Skripts einzuschließen (keine Kennwörter usw.). Weitere Informationen zur PowerShell-Skriptsicherheit
Skriptautoren und Genehmiger ausführen
"Skripts ausführen" verwendet das Konzept von Skriptautoren und genehmigenden Skripts als separate Rollen für die Implementierung und Ausführung eines Skripts. Die Trennung der Rollen des Autors und der genehmigenden Person ermöglicht eine wichtige Prozessprüfung für das leistungsstarke Tool "Skripts ausführen". Es gibt eine zusätzliche Script Runner-Rolle , die die Ausführung von Skripts, aber nicht das Erstellen oder Genehmigen von Skripts zulässt. Weitere Informationen finden Sie unter Erstellen von Sicherheitsrollen für Skripts.
Skripts Rollensteuerelement
Standardmäßig können Benutzer ein von ihnen erstelltes Skript nicht genehmigen. Da Skripts leistungsfähig und vielseitig sind und potenziell auf vielen Geräten bereitgestellt werden, können Sie die Rollen zwischen der Person, die das Skript erstellt, und der Person, die das Skript genehmigt, aufteilen. Diese Rollen bieten eine zusätzliche Sicherheitsebene gegen das Ausführen eines Skripts ohne Aufsicht. Sie können die sekundäre Genehmigung deaktivieren, um die Tests zu vereinfachen.
Genehmigen oder Verweigern eines Skripts
Skripts müssen von der Rolle "Genehmigende für Skripts" genehmigt werden, bevor sie ausgeführt werden können. So genehmigen Sie ein Skript:
- Klicken Sie in der Configuration Manager-Konsole auf Softwarebibliothek.
- Klicken Sie im Arbeitsbereich Softwarebibliothek auf Skripts.
- Wählen Sie in der Liste Skript das Skript aus, das Sie genehmigen oder ablehnen möchten, und klicken Sie dann auf der Registerkarte Start in der Gruppe Skript auf Genehmigen/Verweigern.
- Wählen Sie im Dialogfeld Skript genehmigen oder verweigern die Option Genehmigen oder Verweigern für das Skript aus. Geben Sie optional einen Kommentar zu Ihrer Entscheidung ein. Wenn Sie ein Skript ablehnen, kann es nicht auf Clientgeräten ausgeführt werden.
- Schließen Sie den Assistenten ab. In der Liste "Skript" sehen Sie, wie sich die Spalte "Genehmigungsstatus " je nach der ausgeführten Aktion ändert.
Benutzern das Genehmigen eigener Skripts gestatten
Diese Genehmigung wird hauptsächlich für die Testphase der Skriptentwicklung verwendet.
- Klicken Sie in der Configuration Manager-Konsole auf Verwaltung.
- Erweitern Sie im Arbeitsbereich "Verwaltung " die Option "Standortkonfiguration", und klicken Sie dann auf "Standorte".
- Wählen Sie in der Liste der Standorte Ihre Website aus, und klicken Sie dann auf der Registerkarte Start in der Gruppe Standorte auf Hierarchieeinstellungen.
- Deaktivieren Sie auf der Registerkarte "Allgemein" des Dialogfelds "Eigenschaften von Hierarchieeinstellungen " das Kontrollkästchen Skriptautoren benötigen zusätzliche genehmigende Skriptautoren.
Wichtig
Als bewährte Methode sollten Sie einem Skriptautor nicht erlauben, seine eigenen Skripts zu genehmigen. Dies sollte nur in einer Lab-Umgebung zulässig sein. Wägen Sie sorgfältig die möglichen Auswirkungen ab, die eine Änderung dieser Einstellung in einer Produktionsumgebung haben kann.
Sicherheitsbereiche
Skripts ausführen verwendet Sicherheitsbereiche, ein vorhandenes Feature des Configuration Manager, um die Erstellung und Ausführung von Skripts durch das Zuweisen von Tags zu steuern, die Benutzergruppen darstellen. Weitere Informationen zur Verwendung von Sicherheitsbereichen finden Sie unter Konfigurieren der rollenbasierten Verwaltung für Configuration Manager.
Erstellen von Sicherheitsrollen für Skripts
Die drei Sicherheitsrollen, die zum Ausführen von Skripts verwendet werden, werden standardmäßig nicht im Configuration Manager erstellt. Führen Sie die beschriebenen Schritte aus, um die Rollen "Script Runner", "Script Authors" und "Script Approvers" zu erstellen.
- Wechseln Sie in der Configuration Manager-Konsole zuSicherheitsrollen für die Verwaltung>>
- Klicken Sie mit der rechten Maustaste auf eine Rolle, und klicken Sie auf Kopieren. Der Rolle, die Sie kopieren, sind bereits Berechtigungen zugewiesen. Stellen Sie sicher, dass Sie nur die gewünschten Berechtigungen übernehmen.
- Geben Sie der benutzerdefinierten Rolle einen Namen und eine Beschreibung.
- Weisen Sie der Sicherheitsrolle die unten beschriebenen Berechtigungen zu.
Berechtigungen für Sicherheitsrollen
Rollenname: Script Runners
- Beschreibung: Mit diesen Berechtigungen kann diese Rolle nur Skripts ausführen, die zuvor von anderen Rollen erstellt und genehmigt wurden.
- Berechtigungen: Stellen Sie sicher, dass Folgendes auf "Ja" festgelegt ist.
| Kategorie | Permission | State |
|---|---|---|
| Auflistung | Run Script | Ja |
| Website | Lesen | Ja |
| SMS-Skripte | Lesen | Ja |
Rollenname: Script Authors
- Beschreibung: Diese Berechtigungen ermöglichen es dieser Rolle, Skripts zu erstellen, können sie jedoch nicht genehmigen oder ausführen.
- Berechtigungen: Stellen Sie sicher, dass die folgenden Berechtigungen festgelegt sind.
| Kategorie | Permission | State |
|---|---|---|
| Auflistung | Run Script | Nein |
| Website | Lesen | Ja |
| SMS-Skripte | Erstellen | Ja |
| SMS-Skripte | Lesen | Ja |
| SMS-Skripte | Löschen | Ja |
| SMS-Skripte | Ändern | Ja |
Rollenname: Genehmigende Skripts
- Beschreibung: Diese Berechtigungen ermöglichen es dieser Rolle, Skripts zu genehmigen, können aber nicht erstellt oder ausgeführt werden.
- Berechtigungen: Stellen Sie sicher, dass die folgenden Berechtigungen festgelegt sind.
| Kategorie | Permission | State |
|---|---|---|
| Auflistung | Run Script | Nein |
| Website | Lesen | Ja |
| SMS-Skripte | Lesen | Ja |
| SMS-Skripte | Genehmigen | Ja |
| SMS-Skripte | Ändern | Ja |
Beispiel für SMS-Skriptberechtigungen für die Rolle des Skriptautors
Ordnerunterstützung für Skripts
Ab Version 2403 können Sie Skripts mithilfe von Ordnern organisieren. Diese Änderung ermöglicht eine bessere Kategorisierung und Verwaltung von Skripts.
Öffnen Sie die Configuration Manager-Konsole, und wechseln Sie zum Arbeitsbereich Softwarebibliothek. Wählen Sie im Menüband oder Kontextmenü unter "Skripts" eine der folgenden Optionen aus:
- Erstellen von Ordnern
- Ordner löschen
- Ordner umbenennen
- Verschieben von Ordnern
- Sicherheitsbereiche festlegen
Erstellen eines Skripts
- Klicken Sie in der Configuration Manager-Konsole auf Softwarebibliothek.
- Klicken Sie im Arbeitsbereich Softwarebibliothek auf Skripts.
- Klicken Sie auf der Registerkarte Start in der Gruppe Erstellen auf Skript erstellen.
- Konfigurieren Sie auf der Seite Skript des Assistenten zum Erstellen von Skripts die folgenden Einstellungen:
- Skriptname : Geben Sie einen Namen für das Skript ein. Sie können zwar mehrere Skripts mit demselben Namen erstellen, aber bei Verwendung doppelter Namen ist es schwieriger, das gewünschte Skript in der Configuration Manager-Konsole zu finden.
- Skriptsprache – Derzeit werden nur PowerShell-Skripts unterstützt.
- Importieren – Importieren Sie ein PowerShell-Skript in die Konsole. Das Skript wird im Feld Skript angezeigt.
- Löschen – Entfernt das aktuelle Skript aus dem Skriptfeld.
- Skript – Zeigt das aktuell importierte Skript an. Sie können das Skript in diesem Feld nach Bedarf bearbeiten.
- Schließen Sie den Assistenten ab. Das neue Skript wird in der Skriptliste mit dem Status Warten auf Genehmigung angezeigt. Bevor Sie dieses Skript auf Clientgeräten ausführen können, müssen Sie es genehmigen.
Wichtig
Vermeiden Sie die Skripterstellung für einen Neustart eines Geräts oder einen Neustart des Configuration Manager-Agents, wenn Sie die Funktion "Skripts ausführen" verwenden. Dies kann zu einem kontinuierlichen Neustartzustand führen. Bei Bedarf gibt es Verbesserungen an der Clientbenachrichtigungsfunktion, die den Neustart von Geräten ermöglichen. In der Spalte "Ausstehender Neustart " können Sie Geräte identifizieren, die einen Neustart benötigen.
Skriptparameter
Das Hinzufügen von Parametern zu einem Skript bietet mehr Flexibilität für Ihre Arbeit. Sie können bis zu 10 Parameter einschließen. Im Folgenden wird die aktuelle Fähigkeit des Features "Skripts ausführen" mit Skriptparametern für Folgendes beschrieben: Zeichenfolge, ganzzahlige Datentypen. Listen mit voreingestellten Werten sind ebenfalls verfügbar. Wenn Ihr Skript nicht unterstützte Datentypen aufweist, erhalten Sie eine Warnung.
Klicken Sie im Dialogfeld Skript erstellen unter Skript auf Skriptparameter.
Jeder Parameter Ihres Skripts verfügt über einen eigenen Dialog zum Hinzufügen weiterer Details und zur Validierung. Wenn das Skript einen Standardparameter enthält, wird er in der Parameterbenutzeroberfläche aufgelistet und kann festgelegt werden. Configuration Manager überschreibt den Standardwert nicht, da das Skript nie direkt geändert wird. Sie können sich dies so vorstellen, dass "vorab aufgefüllte vorgeschlagene Werte" in der Benutzeroberfläche bereitgestellt werden, Configuration Manager jedoch zur Laufzeit keinen Zugriff auf "Standardwerte" bietet. Dies kann umgangen werden, indem Sie das Skript bearbeiten, um die richtigen Standardwerte zu erhalten.
Wichtig
Parameterwerte dürfen kein einfaches Anführungszeichen enthalten.
Es gibt ein bekanntes Problem, bei dem Parameterwerte, die einfache Anführungszeichen enthalten oder in einfache Anführungszeichen eingeschlossen sind, nicht ordnungsgemäß an das Skript übergeben werden. Wenn Sie Standardparameterwerte angeben, die ein Leerzeichen in einem Skript enthalten, verwenden Sie stattdessen doppelte Anführungszeichen. Beim Angeben von Standardparameterwerten während der Erstellung oder Ausführung eines Skripts ist es nicht erforderlich, den Standardwert in doppelte oder einfache Anführungszeichen zu setzen, unabhängig davon, ob der Wert ein Leerzeichen enthält oder nicht.
Parameterüberprüfung
Zu jedem Parameter in Ihrem Skript gibt es ein Dialogfeld "Skriptparametereigenschaften ", in dem Sie eine Überprüfung für diesen Parameter hinzufügen können. Nach dem Hinzufügen der Überprüfung sollten Sie Fehler erhalten, wenn Sie einen Wert für einen Parameter eingeben, der seine Überprüfung nicht erfüllt.
Beispiel: FirstName
In diesem Beispiel können Sie die Eigenschaften des Zeichenfolgenparameters FirstName festlegen.
Der Abschnitt "Validierung" des Dialogfelds "Skriptparametereigenschaften " enthält die folgenden Felder zur Verwendung:
- Mindestlänge : Mindestanzahl von Zeichen des Felds "Vorname ".
- Maximale Länge - maximale Anzahl von Zeichen des Felds "Vorname"
- RegEx – Abkürzung für Regular Expression. Weitere Informationen zur Verwendung des regulären Ausdrucks finden Sie im nächsten Abschnitt, Verwenden der Überprüfung regulärer Ausdrücke.
- Benutzerdefinierter Fehler – nützlich zum Hinzufügen eigener benutzerdefinierter Fehlermeldungen, die alle Systemüberprüfungsfehlermeldungen ersetzt.
Verwenden der Validierung regulärer Ausdrücke
Ein regulärer Ausdruck ist eine kompakte Form der Programmierung zum Überprüfen einer Zeichenkette anhand einer codierten Gültigkeitsprüfung. So können Sie z. B. überprüfen, ob im Feld "Vorname" ein großes alphabetisches Zeichen vorhanden ist, indem Sie es in das Feld "RegEx" einfügen[^A-Z].
Die Verarbeitung regulärer Ausdrücke für dieses Dialogfeld wird von .NET Framework unterstützt. Anleitungen zur Verwendung regulärer Ausdrücke finden Sie unter .NET Regular Expression und Regular Expression Language.
Beispiele für Drehbücher
Im Folgenden finden Sie einige Beispiele zur Veranschaulichung von Skripts, die Sie möglicherweise mit dieser Funktion verwenden möchten.
Erstellen eines neuen Ordners und einer neuen Datei
Dieses Skript erstellt einen neuen Ordner und eine Datei innerhalb des Ordners unter Berücksichtigung Ihrer Eingabe für den Namen.
Param(
[Parameter(Mandatory=$True)]
[string]$FolderName,
[Parameter(Mandatory=$True)]
[string]$FileName
)
New-Item $FolderName -type directory
New-Item $FileName -type file
Abrufen der Betriebssystemversion
Dieses Skript verwendet WMI, um den Computer nach seiner Betriebssystemversion abzufragen.
Write-Output (Get-WmiObject -Class Win32_operatingSystem).Caption
Bearbeiten oder Kopieren von PowerShell-Skripts
Sie können ein vorhandenes PowerShell-Skript, das mit dem Feature "Skripts ausführen" verwendet wird, bearbeiten oder kopieren. Anstatt ein Skript neu zu erstellen, das Sie ändern müssen, bearbeiten Sie es jetzt direkt. Beide Aktionen verwenden dieselbe Assistentenoberfläche wie beim Erstellen eines neuen Skripts. Wenn Sie ein Skript bearbeiten oder kopieren, behält Configuration Manager den Genehmigungsstatus nicht bei.
Tipp
Bearbeiten Sie kein Skript, das aktiv auf Clients ausgeführt wird. Sie werden die Ausführung des ursprünglichen Skripts nicht abschließen, und Sie erhalten möglicherweise nicht die beabsichtigten Ergebnisse von diesen Clients.
Bearbeiten eines Skripts
- Wechseln Sie zum Knoten Skripts im Arbeitsbereich Softwarebibliothek .
- Wählen Sie das zu bearbeitende Skript aus, und klicken Sie dann im Menüband auf Bearbeiten .
- Ändern Sie Ihr Skript auf der Seite " Skriptdetails ", oder importieren Sie es erneut.
- Klicken Sie auf "Weiter ", um die Zusammenfassung anzuzeigen, und dann auf "Schließen ", wenn Sie mit der Bearbeitung fertig sind.
Kopieren eines Skripts
- Wechseln Sie zum Knoten Skripts im Arbeitsbereich Softwarebibliothek .
- Wählen Sie das zu kopierende Skript aus, und klicken Sie dann im Menüband auf Kopieren .
- Benennen Sie das Skript im Feld Skriptname um, und nehmen Sie ggf. zusätzliche Änderungen vor.
- Klicken Sie auf "Weiter ", um die Zusammenfassung anzuzeigen, und dann auf "Schließen ", wenn Sie mit der Bearbeitung fertig sind.
Ausführen eines Skripts
Nachdem ein Skript genehmigt wurde, kann es für ein einzelnes Gerät oder eine Sammlung ausgeführt werden. Sobald die Ausführung Ihres Skripts beginnt, wird es schnell durch ein System mit hoher Priorität gestartet, das nach einer Stunde das Zeitlimit überschreitet. Die Ergebnisse des Skripts werden dann mithilfe eines Statusnachrichtensystems zurückgegeben.
So wählen Sie eine Sammlung von Zielen für Ihr Skript aus:
- Klicken Sie in der Configuration Manager-Konsole auf Assets und Compliance.
- Klicken Sie im Arbeitsbereich "Bestand und Kompatibilität " auf "Gerätesammlungen".
- Klicken Sie in der Liste Gerätesammlungen auf die Sammlung der Geräte, auf denen Sie das Skript ausführen möchten.
- Wählen Sie eine Sammlung Ihrer Wahl aus und klicken Sie auf Skript ausführen.
- Wählen Sie auf der Seite "Skript" des Assistenten "Skript ausführen " ein Skript aus der Liste aus. Es werden nur genehmigte Skripts angezeigt.
- Klicken Sie auf "Weiter", und schließen Sie dann den Assistenten ab.
Wichtig
Wenn ein Skript nicht ausgeführt wird, z. B. weil ein Zielgerät während des Zeitraums von einer Stunde ausgeschaltet ist, müssen Sie es erneut ausführen.
Planen der Laufzeit von Skripts
Ab Configuration Manager Current Branch Version 2309 können Sie jetzt die Laufzeit von Skripts in UTC planen.
Planen der Skriptausführung für eine Sammlung:
Klicken Sie in der Configuration Manager-Konsole auf Assets und Compliance.
Klicken Sie im Arbeitsbereich "Bestand und Kompatibilität " auf "Gerätesammlungen".
Klicken Sie in der Liste Gerätesammlungen auf die Sammlung der Geräte, auf denen Sie das Skript planen möchten.
Wählen Sie eine Sammlung Ihrer Wahl aus und klicken Sie auf Skript ausführen.
Planen Sie auf der Seite "Zeitplanung" das Kontrollkästchen "Skriptausführung at", und geben Sie die Fahrplanzeit in UTC an.
Überprüfen Sie die Details, die auf der Zusammenfassungsseite angezeigt werden.
Klicken Sie auf "Weiter", und schließen Sie dann den Assistenten ab.
Hinweis
Alle 5 Minuten werden maximal fünfundzwanzig geplante Skripts bearbeitet.
Ausführung des Zielcomputers
Das Skript wird als System - oder Computerkonto auf dem/den Zielclient(s) ausgeführt. Dieses Konto hat eingeschränkten Netzwerkzugriff. Jeder Zugriff auf Remotesysteme und Standorte durch das Skript muss entsprechend bereitgestellt werden.
Skriptüberwachung
Nachdem Sie die Ausführung eines Skripts auf einer Sammlung von Geräten initiiert haben, gehen Sie wie folgt vor, um den Vorgang zu überwachen. Sie können ein Skript während der Ausführung in Echtzeit überwachen und später zum Status und den Ergebnissen für eine bestimmte Skriptausführung zurückkehren. Die Statusdaten des Skripts werden im Rahmen der Wartungsaufgabe "Gealterte Clientvorgänge löschen" oder des Löschens des Skripts bereinigt.
Klicken Sie in der Configuration Manager-Konsole auf Überwachung.
Klicken Sie im Arbeitsbereich Überwachung auf Skriptstatus.
In der Liste "Skriptstatus " werden die Ergebnisse für jedes Skript angezeigt, das Sie auf Clientgeräten ausgeführt haben. Der Skriptbeendigungscode 0 zeigt im Allgemeinen an, dass das Skript erfolgreich ausgeführt wurde.
Planen der Skriptüberwachung für eine Sammlung
Klicken Sie in der Configuration Manager-Konsole auf Überwachung.
Klicken Sie im Arbeitsbereich Überwachung auf den Knoten Geplante Skripts.
In der Liste der geplanten Skripts wird eine neue Zeile angezeigt.
Überprüfen Sie, ob eine neue Zeile in der Liste der geplanten Skripts angezeigt wurde. In der Spalte "state" sollte der Wert "Scheduled" enthalten sein. Die Spalte ClientOperationId sollte leer sein. Stellen Sie sicher, dass die anderen Spalten, z. B. Skriptname, Zeitplan usw., über die richtigen Werte verfügen.
Aktualisieren Sie nach der Planungszeit den Knoten Geplante Skripts . Die Spalte "Status" sollte den Wert "Erfolgreich initiierter Clientvorgang" enthalten. Die Spalte ClientOperationId sollte einen ganzzahligen Wert aufweisen.
Klicken Sie im Arbeitsbereich Überwachung auf Skriptstatusknoten. Vergewissern Sie sich, dass eine neue Zeile in der Liste angezeigt wurde und die ClientOperationId gleich der ClientOperationId aus dem Knoten "Geplante Skripts" ist.
Klicken Sie auf Status anzeigen , und stellen Sie sicher, dass die Skriptausgabe angezeigt wird.
Skriptausgabe
Client's return script output using JSON formatting indem die Ergebnisse des Skripts an das Cmdlet ConvertTo-JSON weitergeleitet werden. Das JSON-Format gibt durchgängig lesbare Skriptausgaben zurück. Bei Skripts, die keine Objekte als Ausgabe zurückgeben, konvertiert das ConvertTo-Json Cmdlet die Ausgabe in eine einfache Zeichenfolge, die der Client anstelle von JSON zurückgibt.
Skripte, die ein unbekanntes Ergebnis erhalten oder bei denen der Client offline war, werden in den Diagrammen oder im Datensatz nicht angezeigt.
Vermeiden Sie die Rückgabe umfangreicher Skriptausgaben, da sie auf 4 KB gekürzt werden.
Konvertieren Sie ein Enumerationsobjekt in einen Zeichenfolgenwert in Skripts, damit sie ordnungsgemäß im JSON-Format angezeigt werden.
Sie können die detaillierte Skriptausgabe im unformatierten oder strukturierten JSON-Format anzeigen. Diese Formatierung erleichtert das Lesen und Analysieren der Ausgabe. Wenn das Skript gültigen JSON-formatierten Text zurückgibt oder die Ausgabe mithilfe des PowerShell-Cmdlets ConvertTo-Json in JSON konvertiert werden kann, zeigen Sie die detaillierte Ausgabe entweder als JSON-Ausgabe oder als unformatierte Ausgabe an. Andernfalls ist die einzige Option Skriptausgabe.
Beispiel: Skriptausgabe ist in gültiges JSON konvertierbar
Befehl: $PSVersionTable.PSVersion
Major Minor Build Revision
----- ----- ----- --------
5 1 16299 551
Beispiel: Skriptausgabe ist kein gültiges JSON
Befehl: Write-Output (Get-WmiObject -Class Win32_OperatingSystem).Caption
Microsoft Windows 10 Enterprise
Protokolldateien
Auf dem Client standardmäßig in C:\Windows\CCM\logs:
- Scripts.log
- CcmMessaging.log
Auf dem MP, standardmäßig in C:\SMS_CCM\Logs:
- MP_RelayMsgMgr.log
Auf dem Standortserver standardmäßig in C:\Program Files\Configuration Manager\Logs:
- SMS_Message_Processing_Engine.log
Automatisieren mit Windows PowerShell
Sie können die folgenden PowerShell-Cmdlets verwenden, um einige dieser Aufgaben zu automatisieren:
- Approve-CMScript
- Deny-CMScript
- Get-CMScript
- Invoke-CMScript
- New-CMScript
- Remove-CMScript
- Set-CMScript