# Einen Befehl kontrolliert auf viele Hosts bringen Typ: Checkliste Herkunft: windows-server-administration / powershell-server / windows-server-ps-run-sequence Version: windows-server-ps-run-sequence-2026-09-03 Geprüft: 2026-09-03 ACHTUNG: Dieses Dokument ist ein Lernartefakt aus einer Schulungssequenz. Es ist kein produktives Runbook. Vor jeder Anwendung in einer realen Umgebung müssen die Schritte gegen lokale Dokumentation, Runbooks und Freigabestatus geprüft werden. ## Szenario Ein Registry-Wert soll auf 200 Servern gesetzt werden. Das Skript existiert und funktioniert auf dem Arbeitsplatz des Autors. Bevor es breit läuft, soll die Reihenfolge stimmen. ## Schritte 1. Die Zielliste erzeugen und auf Herkunft, Alter und Zuständigkeit prüfen. 2. Den Ist-Zustand auf einem einzelnen Host lesen, ohne etwas zu ändern. 3. Fehler zu beendenden machen und Rückgabewerte externer Programme auswerten. 4. Auf einem Host schreibend ausführen und das Ergebnis zurücklesen. 5. Auf die Breite gehen, mit Auswertung je Host statt einer Summe. 6. Das Ergebnis je Host ablegen — als Nachweis, nicht als Bildschirmausgabe. ## Begründung Warum: Ein Breitenlauf vervielfacht nicht die Arbeit, sondern die Entscheidung, die im Skript steckt. Jeder Schritt vor der Breite ist ein Versuch, eine Annahme zu widerlegen, solange ihr Widerlegen billig ist — die Zielliste zuerst, weil ein falscher Eintrag dort jeden späteren Schritt entwertet. Folgen: **+** Ein Fehler trifft einen Host statt zweihundert, und am Ende steht ein Nachweis je Host. **−** Die Kette dauert deutlich länger als der direkte Aufruf und ist bei drei Servern reiner Überbau. Wer sie dort erzwingt, erzieht das Team dazu, sie zu umgehen — der Maßstab ist, ab wann ein Fehler mehr Server trifft, als jemand von Hand aufräumen kann. ## Quellen 1. Invoke-Command (Microsoft.PowerShell.Core) — https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/invoke-command 2. about_Try_Catch_Finally — https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_try_catch_finally