49696eb0a17a7cda4d5c64f88fc7ff3c350eb790
Get-Services PowerShell Modul
📖 Beschreibung
Die Funktion Get-Services dient dazu, Windows-Dienste auszulesen, zu filtern und optional zu exportieren.
Sie ermöglicht:
- Filtern nach DisplayName
- Filtern nach Status
- Ausgabe als strukturierte Objekte (PSCustomObject)
- Export als JSON oder CSV
⚙️ Funktionsweise
Die Funktion liest alle Dienste über Get-Service aus und speichert relevante Informationen in einem strukturierten Objekt:
- Name
- DisplayName
- Status
Anschließend erfolgt eine Filterung basierend auf den übergebenen Parametern.
Optional können die Ergebnisse exportiert werden.
📥 Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
-searchName |
string | Filtert nach DisplayName (Wildcard möglich, Standard: *) |
-status |
string | Filtert nach Status (z. B. Running, Stopped, Standard: *) |
-export |
string | Exportformat (json oder csv) |
-path |
string | Pfad für den Export (Pflicht, wenn -export gesetzt ist) |
⚠️ Abhängigkeiten
Wenn der Parameter -export verwendet wird, muss auch -path angegeben werden, andernfalls wird ein Fehler ausgelöst:
Wenn -export verwendet wird, muss auch -path angegeben werden.
🚀 Beispiele
🔍 Alle Services anzeigen
Get-Services
🔎 Nach Namen filtern
Get-Services -searchName "*xbox*"
📊 Nur laufende Services anzeigen
Get-Services -status "Running"
📁 Export als JSON
Get-Services -searchName "*xbox*" -export json -path "C:\temp\services.json"
📄 Export als CSV
Get-Services -status "Running" -export csv -path "C:\temp\services.csv"
📤 Rückgabewert
Die Funktion gibt ein Array von PSCustomObjects zurück:
Name : Spooler
DisplayName : Druckwarteschlange
Status : Running
Diese können direkt weiterverarbeitet werden:
Get-Services | Where-Object { $_.Status -eq "Running" }
🧠 Hinweise
- Wildcards (
*) werden unterstützt - Die Filterung erfolgt nach dem Einlesen aller Services
- Export erfolgt aktuell unabhängig vom
-pathParameter (Verbesserungspotential)
🔧 Verbesserungsideen
- Nutzung von
-pathim Export implementieren - Performance verbessern (Verzicht auf
+=) - Direkte Filterung in der Pipeline statt nachträglich
- Validierung für
-export(z. B. nurjsonodercsverlauben)
📌 Fazit
Die Funktion eignet sich ideal für:
- schnelle Service-Analysen
- Reporting
- Automatisierung
- Export von Service-Zuständen
Description
Languages
PowerShell
100%