Wie man den vollständigen Pfad der Dateien in PowerShell erhält

  1. Verwenden Sie Get-ChildItem, um den vollständigen Pfad der Dateien in PowerShell zu erhalten
  2. Verwenden Sie Select-Object, um den vollständigen Pfad der Dateien in PowerShell zu erhalten
  3. Verwenden Sie Format-Table, um den vollständigen Pfad der Dateien in PowerShell zu erhalten
  4. Verwenden Sie die foreach-Schleife, um den vollständigen Pfad der Dateien in PowerShell zu erhalten
  5. Verwenden Sie Format-List, um den vollständigen Pfad der Dateien in PowerShell zu erhalten
  6. Fazit
Wie man den vollständigen Pfad der Dateien in PowerShell erhält

PowerShell hat verschiedene Cmdlets zur Verwaltung der Dateien im System. Sie können Dateien mit PowerShell erstellen, kopieren, verschieben, umbenennen und löschen.

Sie können auch nach den Dateien suchen und die Existenz einer Datei in PowerShell prüfen. Ein Dateipfad gibt den Standort der Datei im System an.

Dieses Tutorial wird verschiedene Methoden vorstellen, um den vollständigen Pfad der Dateien in PowerShell zu erhalten.

Verwenden Sie Get-ChildItem, um den vollständigen Pfad der Dateien in PowerShell zu erhalten

Das Cmdlet Get-ChildItem zeigt eine Liste von Dateien und Verzeichnissen am angegebenen Standort an. Sie können den Parameter -Recurse verwenden, um alle Dateien und Verzeichnisse rekursiv aufzulisten.

Es zeigt auch die Unterverzeichnisse und deren Dateien an. Es ist hilfreich für die rekursive Dateisuche in PowerShell.

Dieser Ansatz wird häufig in Szenarien verwendet, in denen Sie Operationen an einem Satz von Dateien durchführen müssen, die über eine Ordnerhierarchie verteilt sind, wie z.B. Dateisuchen, Batchverarbeitung oder Datenorganisation.

Beispiel:

Get-ChildItem -Path C:\ExampleDirectory -Filter *.txt -Recurse

Wir beginnen, indem wir unser Stammverzeichnis mit -Path C:\ExampleDirectory festlegen. Diese Wahl begründet den Ausgangspunkt unserer Suche und stellt sicher, dass wir am richtigen Ort suchen.

Als Nächstes führen wir den Parameter -Filter *.txt ein. Dies ist ein strategischer Schritt, da er unsere Suche erheblich auf nur die Dateien mit .txt-Erweiterungen eingrenzt.

Damit umgehen wir effizient eine Vielzahl von irrelevanten Dateien, was unser Skript fokussierter und schneller in der Ausführung macht.

Der wahre Game-Changer in unserem Skript ist der Parameter -Recurse. Hier nutzen wir die Fähigkeit von PowerShell, tief in Verzeichnisstrukturen einzutauchen.

Mit -Recurse durchkämmen wir nicht nur die Oberfläche von C:\ExampleDirectory; wir erkunden jede Ecke und jedes Eckchen, jedes Unterverzeichnis, egal wie tief es verschachtelt ist.

Ausgabe:

Vollständigen Pfad der Dateien in PowerShell abrufen - Ausgabe 1

Sie können den vollständigen Pfad der Datei erhalten, indem Sie den Befehl an %{$_.FullName} weiterleiten.

Beispiel:

Get-ChildItem -Path ExampleDirectory\ -Filter sample.txt -Recurse | % { $_.FullName }

Ausgabe:

Vollständigen Pfad der Dateien in PowerShell abrufen - Ausgabe 2

Oder Sie können diesen Befehl verwenden, um alle Dateien mit der Erweiterung .txt und deren Pfade am angegebenen Standort zu erhalten.

Beispiel:

Get-ChildItem -Path ExampleDirectory\ -Recurse | where { $_.extension -eq ".txt" } | % { $_.FullName }

Ausgabe:

Vollständigen Pfad der Dateien in PowerShell abrufen - Ausgabe 3

Verwenden Sie Select-Object, um den vollständigen Pfad der Dateien in PowerShell zu erhalten

Eine ähnliche Methode wird angewendet, aber wir verwenden das Cmdlet Select-Object mit dem Befehl Get-ChildItem, um den vollständigen Pfad der Dateien in PowerShell zu erhalten.

Das Cmdlet Select-Object wählt bestimmte Eigenschaften eines Objekts oder einer Objektmenge aus. Diese Technik ist besonders nützlich in Szenarien, in denen Sie Dateisysteme überprüfen, Daten verwalten oder Bereinigungsoperationen durchführen müssen.

Beispiel:

Get-ChildItem -Path ExampleDirectory\ -Filter *.txt -Recurse | Select-Object -ExpandProperty FullName

Durch dieses Skript nutzen wir die kombinierte Kraft von Get-ChildItem und Select-Object, um effizient .txt-Dateien zu lokalisieren und aufzulisten. Indem wir unsere Suche von ExampleDirectory\ aus starten, stellen wir sicher, dass alle relevanten Unterverzeichnisse eingeschlossen sind.

Der Parameter -Filter *.txt ist ein entscheidender Bestandteil, der es uns ermöglicht, uns nur auf .txt-Dateien zu konzentrieren und damit unsere Suche zu optimieren.

Durch die Verwendung von -Recurse schaben wir nicht nur an der Oberfläche; wir tauchen tief in jedes Unterverzeichnis ein und stellen sicher, dass keine Datei übersehen wird. Der Zauber passiert mit | Select-Object -ExpandProperty FullName, der unsere Ausgabe verfeinert, um nur das Wesentliche anzuzeigen – die vollständigen Pfade der Dateien.

Ausgabe:

Den vollständigen Pfad der Dateien in PowerShell abrufen - Ausgabe 4

Verwenden Sie Format-Table, um den vollständigen Pfad der Dateien in PowerShell zu erhalten

Ähnlich können Sie Format-Table verwenden, um den vollständigen Pfad der Dateien in PowerShell zu erhalten. Das Cmdlet Format-Table formatiert die Ausgabe als Tabelle mit den ausgewählten Eigenschaften eines Objekts.

Das Cmdlet Get-ChildItem wird in Kombination mit Format-Table zu einem leistungsstarken Werkzeug, um nicht nur Dateipfade abzurufen, sondern sie auch in einem organisierten, lesbaren Format darzustellen. Diese Methode ist besonders nützlich für diejenigen, die schnell die Struktur ihres Dateisystems bewerten und berichten müssen.

Beispiel:

Get-ChildItem -Path ExampleDirectory\ -Filter *.txt -Recurse | Format-Table FullName

In diesem Skript nutzen wir strategisch Get-ChildItem, um ExampleDirectory\ und seine Unterverzeichnisse nach .txt-Dateien zu durchsuchen. Der Parameter -Filter *.txt ist entscheidend, da er sicherstellt, dass unsere Suche fokussiert und effizient ist und irrelevante Dateitypen ignoriert.

Das -Recurse-Flag ist entscheidend für eine gründliche Suche und stellt sicher, dass kein Unterverzeichnis unerforscht bleibt.

Nach der Suche verwenden wir | Format-Table FullName, um unsere Ergebnisse in eine gut organisierte Tabelle zu transformieren. Dies verbessert nicht nur die Lesbarkeit, sondern bietet auch eine klare, strukturierte Ansicht der vollständigen Pfade.

Ausgabe:

Erhalten Sie den vollständigen Pfad der Dateien in PowerShell - Ausgabe 5

Verwenden Sie die foreach-Schleife, um den vollständigen Pfad der Dateien in PowerShell zu erhalten

Die foreach-Schleife ist auch als foreach-Anweisung in PowerShell bekannt. Es handelt sich um eine Sprachkonstruktion, um durch eine Reihe von Werten in einer Kollektion von Arrays, Objekten, Zeichenfolgen, Zahlen usw. zu iterieren.

Sie können einen oder mehrere Befehle gegen jedes Element in einem Array innerhalb der foreach-Schleife ausführen.

Beispiel:

Get-ChildItem -Path ExampleDirectory\*.txt -Recurse | foreach { "$_" }

In diesem Skript beginnen wir mit der Bereitstellung von Get-ChildItem, um ExampleDirectory\ sorgfältig nach .txt-Dateien zu durchsuchen.

Die Einbeziehung von -Recurse sorgt für eine umfassende Suche durch alle Ebenen der Unterverzeichnisse. Jede gefundene Datei wird dann in eine foreach-Schleife geleitet.

Innerhalb dieser Schleife fungiert $_ als Platzhalter für die aktuelle Datei. Indem wir $_ in Anführungszeichen setzen und ausgeben, weisen wir PowerShell an, den vollständigen Pfad jeder Datei anzuzeigen.

Dieser Ansatz dient nicht nur dem Abrufen von Daten; es ist ein methodischer Spaziergang durch jede Datei, der die Flexibilität bietet, innerhalb der Schleife komplexere Operationen hinzuzufügen.

Ausgabe:

Vollständigen Pfad der Dateien in PowerShell erhalten - Ausgabe 6

Der obige Befehl funktioniert nicht mit dem Parameter -Filter. Sie können in der Mitte zum Cmdlet Get-Item pipen, um den Parameter -Filter zu verwenden.

Beispiel:

Get-ChildItem -Path ExampleDirectory\ -Filter *.txt -Recurse | Get-Item | foreach { "$_" }

Die Hinzufügung von Get-Item in der Pipeline ist ein entscheidender Schritt, da es die effektive Nutzung des Parameters -Filter ermöglicht und sicherstellt, dass nur .txt-Dateien verarbeitet werden.

Ausgabe:

Vollständigen Pfad der Dateien in PowerShell abrufen - Ausgabe 7

Get-ChildItem hat eingebaute Aliase ls, dir und gci. Sie können alle oben genannten Befehle ausführen, indem Sie einen der Handles anstelle des Cmdlets Get-ChildItem verwenden.

Beispiel:

gci -Path ExampleDirectory\ -Filter *.txt -Recurse | % { $_.FullName }

Bei der Verwendung von Aliassen wird dieser Befehl viel prägnanter, während er dennoch seine Funktionalität beibehält. Benutzer aus verschiedenen Hintergründen (wie Unix/Linux oder älteren Windows-Befehlszeilen) könnten ls oder dir vertrauter finden.

Ausgabe:

Vollständigen Pfad der Dateien in PowerShell abrufen - Ausgabe 8

Verwenden Sie Format-List, um den vollständigen Pfad der Dateien in PowerShell zu erhalten

Das Cmdlet Get-ChildItem ist vielseitig zur Durchsuchung und zum Abrufen von Informationen über Dateien und Verzeichnisse. Wenn es mit dem Parameter -Filter verwendet wird, kann es speziell Dateien eines bestimmten Typs, wie z.B. .txt-Dateien, anvisieren.

Format-List hingegen zeigt die Eigenschaften von Objekten in einer Listenform an. Kombiniert mit Get-ChildItem kann es verwendet werden, um Dateipfade in einer klaren, lesbaren Liste darzustellen.

Beispiel:

Get-ChildItem -Path ExampleDirectory\ -Filter *.txt -Recurse | Format-List FullName

In unserem Code verwenden wir Get-ChildItem, um ExampleDirectory\ und seine Unterverzeichnisse gründlich zu durchsuchen (-Recurse) nach Dateien mit einer .txt-Erweiterung (-Filter *.txt). Jede entdeckte Datei wird dann nahtlos über eine Pipeline (|) an das Cmdlet Format-List übergeben.

Wir konzentrieren uns darauf, die Eigenschaft FullName jeder Datei zu extrahieren, die ihren vollständigen Pfad darstellt. Diese Methode ist besonders effektiv, um eine gut organisierte und lesbare Liste von Dateipfaden zu erstellen.

Ausgabe:

Vollständigen Pfad der Dateien in PowerShell abrufen - Ausgabe 9

Fazit

Zusammenfassend lässt sich sagen, dass PowerShell eine Fülle von Cmdlets für eine professionelle Dateiverwaltung bietet. In diesem Artikel haben wir verschiedene Methoden zur Abfrage des vollständigen Pfades von Dateien mit PowerShell erforscht, insbesondere durch die Nutzung des Cmdlets Get-ChildItem in Kombination mit anderen Cmdlets wie Format-List, Select-Object und Format-Table.

Diese Techniken sind von unschätzbarem Wert für Aufgaben, die die Überprüfung von Dateisystemen, Datenmanagement und Batchverarbeitung umfassen. Jede besprochene Methode bietet einen einzigartigen Ansatz zur Handhabung von Dateipfaden, sei es zum Filtern spezifischer Dateitypen, zum Auflisten von Pfaden in einer formatierten Tabelle oder zum Durchlaufen von Dateien mit einer foreach-Schleife.

Für Leser, die ihr PowerShell-Wissen vertiefen möchten, könnten die nächsten Schritte das Erforschen weiterer fortgeschrittener Techniken zur Dateiweiterverarbeitung, das Eintauchen in PowerShell-Skripting zur Automatisierung oder sogar die Integration von PowerShell-Befehlen mit anderen Tools und Skripten für komplexere Workflows umfassen.

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 File