Join-Path

Das Cmdlet Join-Path kombiniert mehrere Pfadsegmente zu einem gültigen Dateisystempfad.

Es wird verwendet, um:


🔧 Syntax

    Join-Path [-Path] <String> [-ChildPath] <String> [[-AdditionalChildPath] <String[]>] [<CommonParameters>]

-Path

-ChildPath

    Join-Path -Path "C:\Temp" -ChildPath "Datei.txt"

-AdditionalChildPath

Verfügbar ab: PowerShell 6+

    Join-Path -Path "C:\Temp" -ChildPath "Logs" -AdditionalChildPath "2026","April"

⚠️ Hinweise zur Verwendung


📊 Verhalten

Eigenschaft Beschreibung
Plattformabhängigkeit Berücksichtigt das jeweilige Dateisystem
Rückgabewert String (zusammengesetzter Pfad)
Validierung Keine Existenzprüfung des Pfades
Separator-Handling Automatisch korrekt

🧪 Beispiele

Einfaches Zusammenfügen

Join-Path -Path "C:\Temp" -ChildPath "Datei.txt"

Ergebnis: C:\Temp\Datei.txt


Mehrere Segmente

Join-Path -Path "C:\Temp" -ChildPath "Logs" -AdditionalChildPath "2026","April"

Ergebnis: C:\Temp\Logs\2026\April


Mit Variablen

$base = "C:\Temp"
$file = "report.txt"

Join-Path -Path $base -ChildPath $file

Ergebnis: C:\Temp\report.txt


Provider-unabhängig (z. B. Registry)

Join-Path -Path "HKCU:\Software" -ChildPath "Microsoft"

⚙️ Typische Anwendungsfälle


❗ Alternativen / Ergänzungen

String-Konkatenation

# ❌ Fehleranfällig
"C:\Temp\" + "Datei.txt"

[System.IO.Path]::Combine()

[System.IO.Path]::Combine("C:\Temp", "Datei.txt")

Unterschiede:


🧠 Best Practices


Wenn du Pfade immer noch per String zusammenklebst, dann sabotierst du dich halt selbst mit Ansage. Funktioniert kurz, bricht später, und dann suchst du den Fehler wie ein Detektiv ohne Kaffee. Nimm einfach Join-Path und erspar dir das Drama.


Revision #5
Created 2026-04-24 11:54:49 UTC by John-Andreas Borinas
Updated 2026-05-15 04:43:06 UTC by John-Andreas Borinas