PowerShell: Eigene Automatisierungen erstellen

PowerShell ist weit mehr als nur ein Terminal für gelegentliche Administrationsaufgaben. Sie bietet eine ausgereifte Skriptsprache und Automatisierungsplattform, die eine tiefe Integration mit dem Windows-Betriebssystem und dessen Diensten ermöglicht. Fortgeschrittene PowerShell-Nutzer können Automatisierungen aufbauen, die sich auf komplexe Prozesse in der Systemverwaltung erstrecken. Hier gehen wir detaillierter darauf ein, wie Sie Ihre eigenen Automatisierungen erstellen, wiederverwendbare Skripte und Module schreiben und mit fortgeschrittenen PowerShell-Funktionen arbeiten.

Erstellen und Nutzen eigener PowerShell-Skripte

PowerShell-Skripte beginnen in der Regel einfach, mit der Aneinanderreihung von Befehlen, können jedoch schnell komplex werden, wenn Schleifen, Bedingungen und Fehlerbehandlungen integriert werden. Der Workflow zur Erstellung eines PowerShell-Skripts umfasst die Definition von Zielen, das Sammeln der nötigen Cmdlets und das Testen des Codes in der PowerShell-Umgebung.

Ein typisches Beispiel: Ein Skript, das regelmäßig den Status von Windows-Diensten überwacht und fehlerhafte Dienste neu startet:

# Überwacht den Status von Diensten und startet sie neu, wenn sie gestoppt sind
$services = Get-Service -Name 'wuauserv', 'bits', 'spooler'

foreach ($service in $services) {
if ($service.Status -eq 'Stopped') {
Start-Service $service.Name
Write-Output "$($service.Name) wurde gestartet."
} else {
Write-Output "$($service.Name) läuft bereits."
}
}

Dieses Skript durchläuft eine Liste wichtiger Dienste (z. B. den Windows Update-Dienst oder den Druckerspooler) und startet sie neu, wenn sie gestoppt sind.

Parameter und Funktionen: Wiederverwendbarkeit und Modularisierung

Das Einfügen von Parametern in Ihre Skripte macht diese dynamischer und flexibler. Dies ermöglicht das Wiederverwenden derselben Skripte in verschiedenen Szenarien ohne Anpassung des eigentlichen Codes. Funktionen bieten die Möglichkeit, den Code zu modularisieren und somit besser wartbar und erweiterbar zu machen.

Erweiterung des obigen Skripts in eine Funktion mit Parametern:

function Monitor-Service {
param(
[string[]]$serviceNames = @('wuauserv', 'bits', 'spooler')
)

foreach ($service in $serviceNames) {
$serviceStatus = Get-Service -Name $service
if ($serviceStatus.Status -eq 'Stopped') {
Start-Service $serviceStatus.Name
Write-Output "$($serviceStatus.Name) wurde gestartet."
} else {
Write-Output "$($serviceStatus.Name) läuft bereits."
}
}
}

# Aufruf der Funktion mit benutzerdefinierten Dienstnamen
Monitor-Service -serviceNames @('wuauserv', 'dnscache')

In diesem Beispiel können Sie verschiedene Dienstnamen an die Funktion übergeben, was das Skript flexibler macht und es in unterschiedlichen Umgebungen genutzt werden kann.

PowerShell-Workflows: Parallele Automatisierung

Für fortgeschrittene Aufgaben, die lange dauern oder parallelisiert werden müssen, bieten PowerShell-Workflows eine Lösung. Workflows unterstützen parallele Ausführungen und Wiederaufnahmen, falls ein Prozess unterbrochen wird.

Beispiel: Neustarten mehrerer Computer parallel mit einem Workflow:

workflow Restart-MultipleComputers {
param(
[string[]]$computers = @('Computer1', 'Computer2', 'Computer3')
)

Parallel {
foreach -parallel ($computer in $computers) {
Restart-Computer -ComputerName $computer -Force
}
}
}

# Startet den Workflow
Restart-MultipleComputers -computers @('Server1', 'Server2', 'Server3')

Dieser Workflow startet mehrere Computer parallel neu und spart so Zeit bei großen Netzwerken oder Serverfarmen.

Nutzung von PowerShell-Modulen zur Erweiterung

PowerShell-Module fassen Cmdlets, Funktionen und Variablen in einer strukturierten Bibliothek zusammen. Dies erleichtert das Wiederverwenden und Teilen von Code zwischen verschiedenen Projekten oder Teammitgliedern.

Erstellen eines einfachen Moduls:

  1. Schreiben Sie mehrere Funktionen in separate Dateien.
  2. Erstellen Sie ein Modulmanifest mit dem New-ModuleManifest-Cmdlet.
  3. Laden Sie das Modul mit Import-Module in Ihre PowerShell-Umgebung.

Beispiel:

# Funktion 1: Speicherplatz prüfen
function Check-DiskSpace {
Get-PSDrive -PSProvider FileSystem | Select-Object Name, Used, Free
}

# Funktion 2: Dienste prüfen
function Check-Services {
Get-Service | Where-Object { $_.Status -eq 'Stopped' }
}

# Modulmanifest erstellen
New-ModuleManifest -Path 'C:\Scripts\MyAdminModule.psd1' -RootModule 'C:\Scripts\MyAdminModule.psm1'

# Modul importieren
Import-Module 'C:\Scripts\MyAdminModule'

Module helfen, Code zu modularisieren und zu organisieren, was in komplexeren Automatisierungsprojekten unverzichtbar ist.

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Es tut uns leid, dass der Beitrag für dich nicht hilfreich war!

Lasse uns diesen Beitrag verbessern!

Wie können wir diesen Beitrag verbessern?

Meroth IT-Service ist Ihr lokaler IT-Dienstleister in Frankfurt am Main für kleine Unternehmen, Selbstständige und Privatkunden


Kostenfreie Ersteinschätzung Ihres Anliegens?

❱ Nehmen Sie gerne Kontakt auf ❰

Werbung

HP 301 Schwarz Original Druckerpatroneℹ︎
Ersparnis 8%
UVP**: € 23,60
€ 21,76
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
€ 23,99
Preise inkl. MwSt., zzgl. Versandkosten
€ 38,65
Preise inkl. MwSt., zzgl. Versandkosten
UGREEN Revodok Pro USB C Docking Station Dual HDMI 10 IN 1 Hub 2 HDMI, Gigabit Ethernet, 4X USB C/USB A Ports, PD 100W Schnellladen, SD/TF Kartenleserℹ︎
Ersparnis 15%
UVP**: € 46,99
€ 39,99
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
TP-Link RE500X WiFi 6 WLAN Verstärker Repeater AX1500 (1200 Mbit/s 5GHz, 300 Mbit/s 2,4GHz, Gigabit-Port, kompatibel mit Allen WLAN-Routern inkl. Fritzbox)ℹ︎
Ersparnis 7%
UVP**: € 44,90
€ 41,93
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
TP-Link Deco X50-PoE (2-pack), Router, Weissℹ︎
€ 189,90
Preise inkl. MwSt., zzgl. Versandkosten
Ersparnis 12%
UVP**: € 229,00
€ 200,53
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
Lenovo ThinkCentre M75q Gen2 Tiny Ryzen 7 PRO 5750GE 16GB RAM 512GB SSD Win10Pro Win11Pro - 11JN000JGEℹ︎
Kein Angebot verfügbar.
NETGEAR GS305E Managed Switch 5 Port Gigabit Ethernet LAN Switch Plus (Plug-and-Play, Netzwerk Switch Managed, IGMP Snooping, QoS, VLAN, lüfterlos, Robustes Metallgehäuse), Schwarzℹ︎
Ersparnis 8%
UVP**: € 25,99
€ 23,94
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
€ 24,90
Preise inkl. MwSt., zzgl. Versandkosten
HP 305 (3YM61AE) Original Druckerpatrone Schwarz für HP DeskJet 27xx, 41xx, HP Envy 60xx, 64xxℹ︎
Ersparnis 4%
UVP**: € 13,50
€ 12,90
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
€ 12,90
Preise inkl. MwSt., zzgl. Versandkosten
€ 15,99
Preise inkl. MwSt., zzgl. Versandkosten
WD_BLACK SN850X NVMe SSD 2 TB M.2 2280 PCIe 4.0 + 2x Canon GI-55BK Druckerpatrone Schwarz 6292C001AAℹ︎
€ 299,90
Preise inkl. MwSt., zzgl. Versandkosten
€ 299,00
Preise inkl. MwSt., zzgl. Versandkosten
Netgear EAX15 WiFi 6 WLAN Mesh Repeater AX1800 (WLAN Verstärker bis zu 100 m² & 20 Geräte, Dual-Band WiFi Geschwindigkeit bis 1800 MBit/s, 100% abwärtskompatibel, Smart Roaming)ℹ︎
Ersparnis 31%
UVP**: € 89,99
€ 61,99
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
€ 64,99
Preise inkl. MwSt., zzgl. Versandkosten
€ 94,70
Preise inkl. MwSt., zzgl. Versandkosten
NETGEAR Nighthawk Dual-Band WiFi 7 Router (RS100) – Sicherheitsfunktionen, BE3600 WLAN-Geschwindigkeit (bis zu 3,6 Gbit/s) – deckt bis zu 135 m2 ab, 50 Geräte – 2,5 GB Internet-Portℹ︎
Ersparnis 20%
UVP**: € 149,99
€ 119,90
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
€ 186,90
Preise inkl. MwSt., zzgl. Versandkosten
Anker 140W USB C Ladegerät, Laptop Ladegerät, 4-Port Multi-Geräte Schnellladeleistung, Fortschrittliches GaN Netzteil, Touch Control, Kompatibel mit MacBook, iPhone 17/16/15, Samsung, Pixel und mehrℹ︎
Ersparnis 22%
UVP**: € 89,99
€ 69,98
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
Anker Nano 65W USB C Ladegerät, 3-Port PPS Schnellladegerät, iPad Ladegerät, Kompaktes Netzteil für MacBook Pro, iPad Pro, Galaxy S20, Dell XPS 13, Note 20, iPhone 17/16/15 Series,Pixelsℹ︎
Ersparnis 24%
UVP**: € 41,99
€ 31,99
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
HP Laptop 250 G9 15.6" Intel Core i5-1235U 8GB RAM 256GB SSD QWERTY USℹ︎
€ 602,24
Nur noch 1 auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
Lenovo Yoga Slim 7i AI Laptop | 14'' WUXGA OLED Display | Intel Core Ultra 7 | 32GB RAM | 1TB SSD | Intel Arc Grafik | Win11 | QWERTZ | Luna grau | Beleuchtete Tastatur | 3 Monate Premium Careℹ︎
€ 1.438,78
Nur noch 5 auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
HP 304 (3JB05AE) Multipack Original Druckerpatronen 1xSchwarz, 1x Farbe für HP DeskJet 26xx, 37xx, ENVY 50xxℹ︎
Ersparnis 5%
UVP**: € 32,38
€ 30,90
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
€ 31,90
Preise inkl. MwSt., zzgl. Versandkosten
€ 32,99
Preise inkl. MwSt., zzgl. Versandkosten
TP-Link TL-SG1005P 5-Port Gigabit LAN PoE Switch mit 4 PoE+ Ports (65 Watt, IEEE-802.3af/at, Plug-and-Play, Robustes Metallgehäuse)ℹ︎
Ersparnis 31%
UVP**: € 44,90
€ 30,90
Auf Lager
Preise inkl. MwSt., zzgl. Versandkosten
€ 31,49
Preise inkl. MwSt., zzgl. Versandkosten
€ 61,90
Preise inkl. MwSt., zzgl. Versandkosten
ℹ︎ Werbung / Affiliate-Links: Wenn Sie auf einen dieser Links klicken und einkaufen, erhalte ich eine Provision. Für Sie verändert sich der Preis dadurch nicht. Zuletzt aktualisiert am 31. Januar 2026 um 2:33. Die hier gezeigten Preise können sich zwischenzeitlich auf der Seite des Verkäufers geändert haben. Alle Angaben ohne Gewähr.
(**) UVP: Unverbindliche Preisempfehlung

Preise inkl. MwSt., zzgl. Versandkosten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen