Partager via


Join-Path

Combine un chemin d’accès et un chemin d’accès d’enfant en un seul chemin d’accès.

Syntaxe

Join-Path
    [-Path] <String[]>
    [-ChildPath] <String>
    [[-AdditionalChildPath] <String[]>]
    [-Resolve]
    [-Credential <PSCredential>]
    [<CommonParameters>]

Description

La cmdlet Join-Path combine un chemin d'accès et un chemin d'accès enfant en un seul chemin d'accès. Le fournisseur fournit les délimiteurs de chemin d’accès.

Exemples

Exemple 1 : Combiner un chemin d'accès avec un chemin d'accès enfant

Join-Path -Path "path" -ChildPath "childpath"

path\childpath

Cette commande utilise Join-Path pour combiner un chemin et un chemin enfant.

Étant donné que la commande est exécutée à partir du fournisseur FileSystem, elle fournit le délimiteur \ pour joindre les chemins d’accès.

Exemple 2 : Combiner des chemins qui contiennent déjà des séparateurs de répertoires

Join-Path -Path "path\" -ChildPath "\childpath"

path\childpath

Les séparateurs de répertoires existants \ sont gérés de sorte qu’il n’existe qu’un seul séparateur entre Path et ChildPath

Exemple 3 : Afficher des fichiers et des dossiers en joignant un chemin d’accès avec un chemin d’accès enfant

Join-Path "C:\win*" "System*" -Resolve

Cette commande affiche les fichiers et dossiers référencés en joignant le chemin d’accès C:\Win\* et le chemin d’accès enfant System\*. Il affiche les mêmes fichiers et dossiers que Get-ChildItem, mais affiche le chemin complet de chaque élément. Dans cette commande, les noms de paramètres facultatifs Path et ChildPath sont omis.

Exemple 4 : Utiliser Join-Path avec le fournisseur de Registre PowerShell

PS HKLM:\> Join-Path -Path System -ChildPath *ControlSet* -Resolve

HKLM:\System\ControlSet001
HKLM:\System\CurrentControlSet

Cette commande affiche les clés de registre de la sous-clé de registre HKLM\System qui incluent ControlSet.

Le paramètre Resolve tente de résoudre le chemin d'accès combiné, y compris les caractères génériques, à partir du chemin d'accès actuel du fournisseur HKLM:\.

Exemple 5 : Combiner plusieurs racines de chemin d'accès avec un chemin d'accès enfant

Join-Path -Path C:, D:, E:, F: -ChildPath New

C:\New
D:\New
E:\New
F:\New

Cette commande utilise Join-Path pour combiner plusieurs racines de chemin avec un chemin enfant.

Remarque

Les lecteurs spécifiés par Path doivent exister, faute de quoi la jonction de cette entrée échouera.

Exemple 6 : Combiner les racines d'un lecteur de système de fichiers avec un chemin d'accès enfant

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

C:\Subdir
D:\Subdir

Cette commande combine les racines de chaque lecteur du système de fichiers PowerShell dans la console avec le chemin enfant Subdir.

La commande utilise l’applet de commande Get-PSDrive pour obtenir les lecteurs PowerShell pris en charge par le fournisseur FileSystem. L'instruction ForEach-Object sélectionne uniquement la propriété Root des objets PSDriveInfo et la combine avec le chemin enfant spécifié.

La sortie indique que les lecteurs PowerShell sur l’ordinateur comprenaient un lecteur mappé au répertoire C:\Program Files.

Exemple 7 : Combiner un nombre indéfini de chemins d’accès

Join-Path a b c d e f g

a\b\c\d\e\f\g

Le paramètre AdditionalChildPath autorise la jonction d’un nombre illimité de chemins d’accès.

Dans cet exemple, aucun nom de paramètre n’est utilisé, donc « a » lie à Path, « b » à ChildPath et « c-g » à AdditionalChildPath

Paramètres

-AdditionalChildPath

Spécifie des éléments supplémentaires à ajouter à la valeur du paramètre Path. Le paramètre ChildPath est toujours obligatoire et doit également être spécifié.

Ce paramètre est spécifié avec la propriété ValueFromRemainingArguments qui permet de joindre un nombre indéfini de chemins d’accès.

Ce paramètre a été ajouté dans PowerShell 6.0.

Type:String[]
Position:2
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-ChildPath

Spécifie les éléments à ajouter à la valeur du paramètre Path. Les caractères génériques sont autorisés. Le paramètre ChildPath est obligatoire, bien que le nom du paramètre (« ChildPath ») soit facultatif.

Type:String
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:True

-Credential

Remarque

Ce paramètre n’est pas pris en charge par les fournisseurs installés avec PowerShell. Pour emprunter l’identité d’un autre utilisateur ou élever vos informations d’identification lors de l’exécution de cette applet de commande, utilisez Invoke-Command.

Type:PSCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Path

Spécifie le chemin principal (ou chemins) auxquels le sous-chemin est ajouté. Les caractères génériques sont autorisés.

La valeur de Path détermine le fournisseur qui joint les chemins et ajoute les délimiteurs de chemin. Le paramètre Path est obligatoire, bien que le nom du paramètre (« Path ») soit facultatif.

Type:String[]
Alias:PSPath
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:True

-Resolve

Indique que cette cmdlet doit tenter de résoudre le chemin joint à partir du fournisseur actuel.

  • Si des caractères génériques sont utilisés, l’applet de commande retourne tous les chemins qui correspondent au chemin joint.
  • Si aucun caractère générique n'est utilisé, la cmdlet génère une erreur si le chemin n'existe pas.
Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

String

Vous pouvez rediriger une chaîne qui contient un chemin vers ce cmdlet.

Sorties

String

Cette applet de commande retourne une chaîne qui contient le chemin d’accès obtenu.

Notes

Les applets de commande qui contiennent le nom Path (applets de commande Path) manipulent les noms de chemin d’accès et retournent les noms dans un format concis que tous les fournisseurs PowerShell peuvent interpréter. Ils sont conçus pour être utilisés dans les programmes et les scripts dans lesquels vous souhaitez afficher tout ou partie d’un nom de chemin d’accès dans un format particulier. Utilisez-les comme vous utiliseriez Dirname, Normpath, Realpath, Joinou d’autres manipulateurs de chemins d’accès.

Vous pouvez utiliser les cmdlets path avec plusieurs fournisseurs, notamment les fournisseurs FileSystem, Registry et Certificate.

Cette applet de commande est conçue pour fonctionner avec les données exposées par n’importe quel fournisseur. Pour répertorier les fournisseurs disponibles dans votre session, tapez Get-PSProvider. Pour plus d’informations, voir about_Providers.