PowerShell ist eine mächtige Kommandozeilen-Shell und Skriptsprache von Microsoft, die speziell für die Systemadministration entwickelt wurde. Sie kombiniert die Flexibilität von Shells wie Bash mit der Stärke von .NET und erlaubt dir, komplexe Aufgaben mit wenigen Befehlen zu automatisieren.
PowerShell ist besonders nützlich für:
PowerShell verwendet sogenannte Cmdlets – kleine, spezialisierte Befehle im Format Verb-Noun, z. B. Get-Process.
Du kannst Befehle mit | verketten, um die Ausgabe eines Cmdlets als Eingabe für das nächste zu verwenden.
Get-Process | Where-Object {$_.CPU -gt 100}
Weitere Zeilen anzeigen
Im Gegensatz zu klassischen Shells arbeitet PowerShell mit .NET-Objekten statt mit Text. Das macht die Verarbeitung von Daten viel robuster.
Variablen beginnen mit $, z. B. $name = "Benjamin".
Mit Enter-PSSession oder Invoke-Command kannst du Befehle auf entfernten Rechnern ausführen.
| Befehl | Beschreibung |
|---|---|
| Get-Help | Zeigt Hilfe zu Cmdlets |
| Get-Command | Listet verfügbare Cmdlets |
| Get-Process | Zeigt laufende Prozesse |
| Stop-Process | Beendet einen Prozess |
| Get-Service | Zeigt Dienste |
| Start-Service | Startet einen Dienst |
| Stop-Service | Stoppt einen Dienst |
| Set-Service | Konfiguriert Dienste |
| Get-EventLog | Zeigt Ereignisprotokolle |
| Get-Content | Liest Dateiinhalt |
| Set-Content | Schreibt in eine Datei |
| Add-Content | Fügt Inhalt zu Datei hinzu |
| Copy-Item | Kopiert Dateien/Ordner |
| Move-Item | Verschiebt Dateien/Ordner |
| Remove-Item | Löscht Dateien/Ordner |
| Get-ChildItem | Listet Dateien/Ordner |
| Test-Path | Prüft, ob Pfad existiert |
| New-Item | Erstellt Datei/Ordner |
| Get-Variable | Zeigt Variablen |
| Clear-Host | Löscht die Konsole |
Get-Process | Where-Object {$_.CPU -gt 200} | Stop-Process
PowerShell ist ein unverzichtbares Werkzeug für Admins, DevOps und Power-User. Mit diesen Grundlagen und den wichtigsten Befehlen hast du ein solides Fundament, um produktiv zu arbeiten und deine Umgebung zu automatisieren.
H@ppy H@cking