Obtenir le chemin complet des fichiers dans PowerShell

Rohan Timalsina 21 décembre 2022
  1. Utilisez Get-ChildItem pour obtenir le chemin complet des fichiers dans PowerShell
  2. Utilisez Select-Object pour obtenir le chemin complet des fichiers dans PowerShell
  3. Utilisez Format-Table pour obtenir le chemin complet des fichiers dans PowerShell
  4. Utilisez la boucle foreach pour obtenir le chemin complet des fichiers dans PowerShell
Obtenir le chemin complet des fichiers dans PowerShell

PowerShell a plusieurs cmdlets pour gérer les fichiers sur le système. Vous pouvez créer, copier, déplacer, renommer et supprimer les fichiers à l’aide de PowerShell.

Vous pouvez également rechercher les fichiers et vérifier l’existence d’un fichier dans PowerShell. Un chemin de fichier indique l’emplacement du fichier sur le système. Ce didacticiel présentera différentes méthodes pour obtenir le chemin complet des fichiers dans PowerShell.

Utilisez Get-ChildItem pour obtenir le chemin complet des fichiers dans PowerShell

la cmdlet Get-ChildItem affiche une liste de fichiers et de répertoires à l’emplacement spécifié. Vous pouvez utiliser le paramètre -Recurse pour lister tous les fichiers et répertoires de manière récursive.

Il affiche également les sous-répertoires et leurs fichiers. Il est utile pour la recherche de fichiers récursifs dans PowerShell.

Voici un exemple de recherche récursive de fichiers :

Get-ChildItem -Path C:\New -Filter test.txt -Recurse

La commande ci-dessus recherche le fichier test.txt à l’emplacement C:\New de manière récursive. Il vérifie tous les répertoires et sous-répertoires à l’intérieur de l’emplacement donné et affiche les détails du fichier s’il est trouvé.

Production :

    Directory: C:\New\complex


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        12/16/2021   7:29 AM            198 test.txt

Comme vous pouvez le voir, le fichier test.txt se trouve dans le répertoire C:\New\complex. Il affiche le Path, Mode, LastWriteTime, Length et Name du fichier.

Vous pouvez obtenir le chemin complet du fichier en redirigeant la commande vers %{$_.FullName}.

Get-ChildItem -Path C:\New -Filter test.txt -Recurse | %{$_.FullName}

Production :

C:\New\complex\test.txt

Vous pouvez utiliser *.txt avec le paramètre -Filter pour obtenir tous les fichiers ayant des extensions .txt à l’emplacement C:\New.

Get-ChildItem -Path C:\New -Filter *.txt -Recurse | %{$_.FullName}

Production :

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt

Ou, vous pouvez utiliser cette commande pour obtenir tous les fichiers ayant l’extension .txt et leurs chemins à l’emplacement spécifié.

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

Utilisez Select-Object pour obtenir le chemin complet des fichiers dans PowerShell

Une méthode similaire sera utilisée mais nous utiliserons la cmdlet Select-Object avec la commande Get-ChildItem pour obtenir le chemin complet des fichiers dans PowerShell. la cmdlet Select-Object sélectionne les propriétés spécifiées d’un objet ou d’un ensemble d’objets.

Get-ChildItem -Path C:\New -Filter *.txt -Recurse | Select-Object -ExpandProperty FullName

Production :

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt

Utilisez Format-Table pour obtenir le chemin complet des fichiers dans PowerShell

De même, vous pouvez utiliser Format-Table pour obtenir le chemin complet des fichiers dans PowerShell. la cmdlet Format-Table formate la sortie sous forme de tableau avec les propriétés sélectionnées d’un objet.

Get-ChildItem -Path C:\pc -Filter car.png -Recurse | Format-Table FullName

Production :

FullName
--------
C:\pc\computing\task4\car.png

Utilisez la boucle foreach pour obtenir le chemin complet des fichiers dans PowerShell

La boucle foreach est également connue sous le nom d’instruction foreach dans PowerShell. Il s’agit d’une construction de langage permettant de parcourir une série de valeurs dans une collection de tableaux, d’objets, de chaînes, de nombres, etc. Vous pouvez exécuter une ou plusieurs commandes sur chaque élément d’un tableau dans la boucle foreach.

Voici comment vous pouvez utiliser la boucle foreach pour obtenir le chemin complet des fichiers dans PowerShell.

Get-ChildItem -path C:\New\*.txt -Recurse | foreach { "$_" }

Production :

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt

La commande ci-dessus ne fonctionne pas avec le paramètre -Filter. Vous pouvez diriger vers la cmdlet Get-Item au milieu pour utiliser le paramètre -Filter.

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

Production :

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt

Get-ChildItem a des alias intégrés ls, dir et gci. Vous pouvez exécuter toutes les commandes ci-dessus en utilisant l’une des poignées à la place de la cmdlet Get-ChildItem.

Par example:

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

Production :

C:\New\complex\test.txt
C:\New\record\book.txt
C:\New\record\data.txt
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

Article connexe - PowerShell File