PowerShell ist eine mächtige Skriptsprache und Befehlszeilen-Shell von Microsoft, die für die Automatisierung und Verwaltung von Systemen entwickelt wurde. Mit PowerShell kannst du administrative Aufgaben effizient erledigen, Skripte schreiben und Konfigurationen verwalten. Dieser Leitfaden bietet eine Einführung in die Grundlagen, um dir den Einstieg zu erleichtern.
Inhalt
- Was ist PowerShell?
- PowerShell vs. Eingabeaufforderung (CMD)
- Installation und Öffnen von PowerShell
- Grundlegende PowerShell Befehle
- Pipelines und Weiterleitungen
- Arbeiten mit Objekten
- Variablen und Datentypen
- Skripte schreiben
- Sicherheitseinstellungen
- Fazit
1. Was ist PowerShell?
PowerShell ist eine objektorientierte Skriptsprache, die auf dem .NET-Framework basiert. Sie wurde entwickelt, um Administratoren zu helfen, Aufgaben zu automatisieren und Skripte zu erstellen, um wiederkehrende Tätigkeiten effizienter auszuführen.
Hauptmerkmale:
- Objektorientiert: Arbeitet mit .NET-Objekten statt mit Text.
- Pipelines: Du kannst den Output eines Befehls als Input für den nächsten verwenden.
- Remote-Verwaltung: Erlaubt es, Befehle auf entfernten Systemen auszuführen.
- Cross-Platform: PowerShell Core läuft auch auf Linux und macOS.
2. PowerShell vs. Eingabeaufforderung (CMD)
Feature | PowerShell | CMD |
---|---|---|
Basis | Objektorientiert (.NET-Objekte) | Textbasiert |
Kommandos | Cmdlets (z.B. Get-Process ) | Befehle (z.B. dir , cd ) |
Erweiterbarkeit | Hohe Erweiterbarkeit (Module) | Eher begrenzt |
Skripting | Umfangreich (mit .ps1-Dateien) | Einfacher Batch-Skripting |
Pipeline | Unterstützt Objektweitergabe | Nur Textweitergabe |
3. Installation und Öffnen von PowerShell
Installation:
PowerShell ist standardmäßig in Windows installiert. Die neueste Version von PowerShell Core ist jedoch auch für Linux und macOS verfügbar.
- Windows:
Suche nach „PowerShell“ im Startmenü oder verwendeWIN + X
und wähle „Windows PowerShell“ oder „PowerShell (Admin)“. - Linux/macOS:
Installiere PowerShell Core über den Paketmanager deiner Wahl:
sudo apt-get install -y powershell # Linux
brew install --cask powershell # macOS
Öffnen:
- In Windows:
WIN + X
> „Windows PowerShell“ - In Linux/macOS: Tippe
pwsh
im Terminal ein.
4. Grundlegende PowerShell Befehle
Hier sind einige grundlegende PowerShell Befehle, um dich mit der Shell vertraut zu machen:
Get-Command
: Zeigt alle verfügbaren Cmdlets an.
Get-Command
Get-Help
: Liefert Hilfedokumentation zu Cmdlets.
Get-Help Get-Process
Get-Process
: Listet alle laufenden Prozesse auf.
Get-Process
Set-Location
: Wechselt das Verzeichnis (ähnlich zu cd
in CMD).
Set-Location C:\Users\DeinBenutzername
Get-ChildItem
: Listet alle Dateien und Ordner im aktuellen Verzeichnis auf (entspricht dir
in CMD).
Get-ChildItem
Stop-Process
: Beendet einen Prozess.
Stop-Process -Name notepad
5. Pipelines und Weiterleitungen
In PowerShell kannst du den Output eines Befehls an einen anderen Befehl weiterleiten. Dies geschieht mithilfe von Pipelines (|).
Beispiel:
Alle laufenden Prozesse auflisten und nach CPU-Verbrauch sortieren:
Get-Process | Sort-Object CPU -Descending
6. Arbeiten mit Objekten
Ein Hauptunterschied zwischen PowerShell und traditionellen Shells wie CMD ist, dass PowerShell mit Objekten arbeitet und nicht mit einfachem Text.
Wenn du z.B. Get-Process
ausführst, erhältst du eine Liste von Objekten, die jeweils Eigenschaften wie CPU-Auslastung, Name und Status haben.
Beispiel: Den Namen und die CPU-Nutzung der Prozesse anzeigen:
Get-Process | Select-Object Name, CPU
7. Variablen und Datentypen
In PowerShell können Variablen mit dem $
-Zeichen definiert werden:
$meinName = "John"
$zahl = 42
PowerShell erkennt den Datentyp automatisch, du kannst ihn jedoch auch explizit angeben:
[int]$nummer = 10
[string]$text = "Hallo Welt"
8. Skripte schreiben
PowerShell Skripte sind Dateien mit der Endung .ps1
. Du kannst deine Skripte in einem beliebigen Texteditor schreiben (z.B. Notepad, VSCode).
Beispiel eines einfachen Skripts:
# Skript: Hallo.ps1
$meinName = "Max"
Write-Output "Hallo, $meinName"
Um ein Skript auszuführen, navigiere im Terminal zum Verzeichnis des Skripts und führe es mit folgendem Befehl aus:
.\Hallo.ps1
9. Sicherheitseinstellungen
PowerShell hat aus Sicherheitsgründen standardmäßig restriktive Ausführungsrichtlinien. Um Skripte auszuführen, musst du eventuell die Ausführungsrichtlinie ändern.
Prüfe die aktuelle Richtlinie:
Get-ExecutionPolicy
Um sie zu ändern, z.B. auf RemoteSigned (Skripte von deinem System sind erlaubt, heruntergeladene Skripte müssen signiert sein):
Set-ExecutionPolicy RemoteSigned
10. Fazit
PowerShell ist ein mächtiges Werkzeug für Administratoren und Entwickler, um Automatisierungsaufgaben zu erledigen und effizienter zu arbeiten. Mit diesem Einsteiger-Guide hast du nun eine Grundlage, um die wichtigsten Konzepte zu verstehen und die ersten Schritte in der PowerShell-Welt zu machen. Von hier aus kannst du tiefer in fortgeschrittene Themen wie Module, Remote-Verwaltung und komplexe Skripte eintauchen.
Nützliche Ressourcen:
- Offizielle Dokumentation: Microsoft PowerShell Docs
- Lernvideos: Viele Einführungsvideos auf YouTube zum Thema „PowerShell Tutorial“.
Viel Erfolg beim Lernen von PowerShell!