Wie man den Pfad verbindet, um mehr als zwei Zeichenfolgen in einen Dateipfad in PowerShell zu kombinieren.

  1. Verwenden Sie den Join-Path Wert, um mehr als zwei Strings zu einem Datei-Pfad in PowerShell zu kombinieren
  2. Fazit
Wie man den Pfad verbindet, um mehr als zwei Zeichenfolgen in einen Dateipfad in PowerShell zu kombinieren.

Das Join-Path Cmdlet ermöglicht es dem Benutzer, Strings zu einem einzigen Pfad zu kombinieren. Manchmal müssen Sie Pfade kombinieren, um einen einzelnen Pfad zu erstellen, wenn Sie in PowerShell arbeiten.

An dieser Stelle kommt das Join-Path Cmdlet zum Einsatz. Viele Kindpfade können mit dem Hauptpfad kombiniert oder angehängt werden, um einen einzigen Pfad zu erstellen.

Der -Path Parameter gibt den Hauptpfad an, an den der Kindpfad angehängt wird. Der Wert von -Path bestimmt, welcher Anbieter die Pfade verbindet und die Pfadtrennzeichen hinzufügt.

Er stellt das \ Trennzeichen zur Verfügung, um die Pfade zu verbinden. Der -ChildPath Parameter gibt die Pfade an, die zum Wert des -Path Parameters hinzugefügt werden sollen.

Zum Beispiel verwendet der folgende Befehl Join-Path, um den Hauptpfad hello und einen Kindpfad world zu kombinieren.

Join-Path -Path "hello" -ChildPath "world"

Ausgabe:

powershell pfad verbinden - ausgabe 1

Das Join-Path Cmdlet akzeptiert nur zwei String-Eingaben oder einen -ChildPath Parameter. Mit dem einzelnen Befehl können Sie Join-Path nicht verwenden, um mehr als zwei Strings zu einem Datei-Pfad zu kombinieren.

Sie müssen mehrere Join-Path Anweisungen zusammen verwenden, um mehr als zwei Strings zu einem Datei-Pfad in PowerShell zu kombinieren.

Verwenden Sie den Join-Path Wert, um mehr als zwei Strings zu einem Datei-Pfad in PowerShell zu kombinieren

Da der Join-Path Pfadwert in die Pipe weitergeleitet werden kann, können Sie mehrere Join-Path Anweisungen zusammen pipen, um mehr als zwei Strings zu einem Datei-Pfad zu kombinieren.

Zum Beispiel kombiniert der folgende Code alle vier Strings und erstellt einen einzelnen Pfad C:\content\software\PowerShell.

Join-Path -Path "C:" -ChildPath "content" | Join-Path -ChildPath "software" | Join-Path -ChildPath "PowerShell"

In diesem Codeausschnitt verwenden Sie das Join-Path Cmdlet mehrmals, um schrittweise einen Datei-Pfad zu erstellen. Bei jedem Aufruf von Join-Path nehmen Sie den aktuellen Pfad und erweitern ihn, indem Sie ein weiteres Segment hinzufügen.

Dies geschieht, indem die Ausgabe jeder Join-Path Operation an die nächste weitergeleitet wird, wodurch der endgültige Datei-Pfad Stück für Stück konstruiert wird. Der -ChildPath Parameter ist hier entscheidend, da er das zusätzliche Segment angibt, das zum vorhandenen Pfad hinzugefügt werden soll.

Infolgedessen erstellt der Code effektiv einen vollständigen Datei-Pfad, indem er den Basis-Pfad C: mit den nachfolgenden Strings content, software und PowerShell kombiniert.

Ausgabe:

powershell pfad verbinden - ausgabe 2

Kombinieren mehrerer Datei-Pfade mit einem Kindpfad in PowerShell

Der Hauptzweck des Kombinierens mehrerer Pfade mit einem Kindpfad besteht darin, vollständig qualifizierte Datei-Pfade in PowerShell zu erstellen. Durch das Verständnis, wie man mehrere Pfade mit einem Kindpfad kombiniert, können Sie Datei-Pfade dynamisch effizient erstellen und die Flexibilität und Lesbarkeit Ihrer PowerShell Skripte verbessern.

Join-Path -Path "Path1\", "Path2\" -ChildPath "Folder\File.txt"

In diesem Codeausschnitt verwenden Sie das Join-Path Cmdlet, um zwei Pfade (Path1 und Path2) mit einem Kindpfad (Folder\File.txt) zu verbinden. Indem Sie ein Array von Stamm-Pfaden über den -Path Parameter übergeben und den Kindpfad mit -ChildPath angeben, erstellen Sie vollständig qualifizierte Datei-Pfade.

Infolgedessen zeigt die Ausgabe die vollständigen Datei-Pfade, die durch die Kombination jedes Pfades mit dem angegebenen Kindpfad erstellt wurden. Diese Methode bietet eine unkomplizierte Möglichkeit, mehrere Pfade in einen einzigen Datei-Pfad zu integrieren und erhöht die Vielseitigkeit Ihrer PowerShell Skripte.

Ausgabe:

powershell Pfad verbinden - Ausgabe 3

Kombinieren von Wurzeln eines Datei-System-Laufwerks mit einem Kindpfad in PowerShell

Beim Umgang mit mehreren Pfadwurzeln und einem Kindpfad bietet das Join-Path Cmdlet zusammen mit der Array-Eingabe und dem -ChildPath Parameter eine effiziente Möglichkeit, disparate Pfadkomponenten zu einem kohärenten Datei-Pfad zu kombinieren.

Im Kontext des Get-PSDrive Cmdlets filtert der -PSProvider Parameter die Laufwerke basierend auf dem Anbieter, zu dem sie gehören.

Get-PSDrive -PSProvider filesystem | ForEach-Object { $_.root } | Join-Path -ChildPath "SubFolder"

In diesem Codeausschnitt verwenden Sie das Get-PSDrive Cmdlet, um die Stamm-Pfade aller Dateisystem-Laufwerke abzurufen. Dann leiten Sie die Ergebnisse an ForEach-Object weiter, um jeden Stamm-Pfad zu extrahieren.

Diese Stamm-Pfade werden anschließend zusammen mit dem Kindpfad SubFolder an Join-Path übergeben. Das Join-Path Cmdlet kombiniert jeden Stamm-Pfad mit dem Kindpfad und erstellt vollständig qualifizierte Datei-Pfade.

Diese Methode ermöglicht es Ihnen, Datei-Pfade dynamisch basierend auf den Stamm-Pfaden der derzeit auf Ihrem System zugänglichen Laufwerke zu generieren.

Ausgabe:

powershell Pfad verbinden - Ausgabe 4

Fazit

Zusammenfassend lässt sich sagen, dass das Join-Path Cmdlet in PowerShell ein wertvolles Werkzeug zum Kombinieren von Strings zu einem einzigen Datei-Pfad ist. Obwohl es typischerweise nur zwei String-Eingaben oder einen -ChildPath Parameter akzeptiert, können Sie diese Einschränkung überwinden, indem Sie mehrere Join-Path Anweisungen miteinander verketten.

Dieser Artikel hat verschiedene Methoden zum Kombinieren mehrerer Strings zu einem Datei-Pfad mit Join-Path untersucht, einschließlich der mehrfachen Verwendung des Cmdlets in Folge und des Pipens der Ausgabe einer Join-Path Operation in eine andere. Durch das Verständnis dieser Techniken können Sie Datei-Pfade dynamisch basierend auf verschiedenen Szenarien und Anforderungen in Ihren PowerShell Skripten konstruieren.

Genießen Sie unsere Tutorials? Abonnieren Sie DelftStack auf YouTube, um uns bei der Erstellung weiterer hochwertiger Videoanleitungen zu unterstützen. Abonnieren
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

Verwandter Artikel - PowerShell String

Verwandter Artikel - PowerShell Path