Détermine si tous les éléments d'un chemin d'accès existent.
Syntaxe
Test-Path [-LiteralPath] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Include <string[]>] [-IsValid] [-PathType {<Any> | <Container> | <Leaf>}] [-UseTransaction] [<CommonParameters>] Test-Path [-Path] <string[]> [-Credential <PSCredential>] [-Exclude <string[]>] [-Filter <string>] [-Include <string[]>] [-IsValid] [-PathType {<Any> | <Container> | <Leaf>}] [-UseTransaction] [<CommonParameters>]
Description
L'applet de commande Test-Path détermine si tous les éléments du chemin d'accès existent. Elle retourne TRUE ($true) lorsque tous les éléments existent et FALSE ($false) lorsqu'il en manque. Elle peut également indiquer si la syntaxe de chemin d'accès est valide et si le chemin d'accès mène à un conteneur ou à un élément terminal (nœud terminal).
Paramètres
-Credential <PSCredential>
Spécifie un compte d'utilisateur qui a l'autorisation d'exécuter cette action. La valeur par défaut est l'utilisateur actuel.
Tapez un nom d'utilisateur, tel que « User01 » ou « Domain01\User01 ». Vous pouvez également entrer un objet PSCredential, tel que celui généré par l'applet de commande Get-Credential. Si vous tapez un nom d'utilisateur, vous êtes invité à entrer un mot de passe.
Ce paramètre n'est pas pris en charge par les fournisseurs installés avec Windows PowerShell.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
true (ByPropertyName) |
Accepter les caractères génériques ? |
false |
-Exclude <string[]>
Omet les éléments spécifiés. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément ou un modèle de chemin d'accès, tel que « *.txt ». Les caractères génériques sont autorisés.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-Filter <string>
Spécifie un filtre dans le format ou le langage du fournisseur. La valeur de ce paramètre qualifie le paramètre Path. La syntaxe du filtre, notamment l'utilisation de caractères génériques, dépend du fournisseur. Les filtres sont plus efficaces que les autres paramètres, car le fournisseur les applique lors de la récupération des objets, plutôt que de laisser le soin à Windows PowerShell de filtrer les objets une fois qu'ils ont été récupérés.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-Include <string[]>
Vérifie uniquement les chemins d'accès spécifiés. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément ou un modèle de chemin d'accès, tel que « *.txt ». Les caractères génériques sont autorisés.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-IsValid
Détermine si la syntaxe du chemin d'accès est correcte, que les éléments du chemin d'accès existent ou pas. Ce paramètre retourne la valeur TRUE si la syntaxe de chemin d'accès est valide et FALSE dans le cas contraire.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-LiteralPath <string[]>
Spécifie un chemin d'accès à vérifier. Contrairement au paramètre Path, la valeur du paramètre LiteralPath est utilisée exactement telle que vous la tapez. Aucun caractère n'est interprété en tant que caractère générique. Si le chemin d'accès inclut des caractères d'échappement, mettez-le entre des guillemets simples. Les guillemets simples indiquent à Windows PowerShell qu'aucun caractère ne doit être interprété en tant que séquence d'échappement.
Obligatoire ? |
true |
Position ? |
1 |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
true (ByPropertyName) |
Accepter les caractères génériques ? |
false |
-Path <string[]>
Spécifie un chemin d'accès à vérifier. Les caractères génériques sont autorisés. Si le chemin d'accès inclut des espaces, mettez-le entre guillemets. Le nom de paramètre (« Path ») est facultatif.
Obligatoire ? |
true |
Position ? |
1 |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
true (ByValue, ByPropertyName) |
Accepter les caractères génériques ? |
false |
-PathType <TestPathType>
Indique si le dernier élément figurant dans le chemin d'accès est d'un type particulier. Ce paramètre retourne la valeur TRUE si l'élément est du type spécifié et FALSE dans le cas contraire.
Les valeurs valides sont :
-- Container : élément qui contient d'autres éléments (répertoire ou clé de Registre, par exemple).
-- Leaf : élément qui ne contient pas d'autres éléments (fichier, par exemple).
-- Any : conteneur ou nœud terminal. Indique si le dernier élément figurant dans le chemin d'accès est d'un type particulier. Retourne TRUE si l'élément est du type spécifié et FALSE dans le cas contraire.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
-UseTransaction
Inclut la commande dans la transaction active. Ce paramètre est valide uniquement lorsqu'une transaction est en cours. Pour plus d'informations, consultez about_Transactions.
Obligatoire ? |
false |
Position ? |
named |
Valeur par défaut |
|
Accepter l'entrée de pipeline ? |
false |
Accepter les caractères génériques ? |
false |
<CommonParameters>
Cette applet de commande prend en charge les paramètres courants : -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer et -OutVariable. Pour plus d'informations, consultez about_Commonparameters.
Entrées et sorties
Le type d'entrée est le type des objets que vous pouvez diriger vers l'applet de commande. Le type de retour est le type des objets que l'applet de commande retourne.
Entrées |
System.String Vous pouvez diriger une chaîne qui contient un chemin d'accès (mais pas un chemin d'accès littéral) vers Test-Path. |
Sorties |
System.Boolean L'applet de commande retourne la valeur « True » lorsque le chemin d'accès existe et « False » dans le cas contraire. |
Remarques
Les applets de commande contenant le nom Path (les applets de commande Path) manipulent les noms de chemin d'accès et les retournent dans un format concis pouvant être interprété par tous les fournisseurs Windows PowerShell. Elles sont conçues pour être utilisées dans des programmes et des scripts dans lesquels vous voulez afficher l'intégralité ou une partie d'un nom de chemin d'accès dans un format particulier. Utilisez-les comme Dirname, Normpath, Realpath, Join ou tout autre manipulateur de chemin d'accès.
Vous pouvez utiliser les applets de commande Path avec plusieurs fournisseurs, notamment les fournisseurs FileSystem, Registry et Certificate.
L'applet de commande Test-Path est conçue pour utiliser 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, consultez about_Providers.
Exemple 1
C:\PS>test-path -path "C:\Documents and Settings\NicoleH" Description ----------- Cette commande indique si tous les éléments figurant dans le chemin d'accès existent (à savoir le répertoire C:, le répertoire Documents and Settings et le répertoire NicoleH). S'il en manque, l'applet de commande retourne FALSE. Sinon, elle retourne TRUE.
Exemple 2
C:\PS>test-path -path $profile C:\PS>test-path -path $profile -IsValid Description ----------- Ces commandes vérifient le chemin d'accès au profil Windows PowerShell. La première commande détermine si tous les éléments du chemin d'accès existent. La deuxième commande détermine si la syntaxe du chemin d'accès est correcte. Dans ce cas, le chemin d'accès est incorrect (FALSE), mais la syntaxe est correcte (TRUE). Ces commandes utilisent $profile, la variable automatique qui pointe vers l'emplacement du profil, même si le profil n'existe pas. Pour plus d'informations sur les variables automatiques, consultez about_Automatic_Variables.
Exemple 3
C:\PS>test-path -path "C:\CAD\Commercial Buildings\*" -exclude *.dwg Description ----------- Cette commande indique si le répertoire Commercial Buildings contient d'autres fichiers que des fichiers .dwg. La commande utilise le paramètre Path pour spécifier le chemin d'accès. Comme le chemin d'accès contient un espace, il est mis entre guillemets. L'astérisque situé à la fin du chemin d'accès indique le contenu du répertoire Commercial Building. (Dans le cas de longs chemins d'accès comme celui-ci, tapez les premières lettres du chemin d'accès, puis utilisez la touche TAB pour compléter le chemin d'accès.) La commande utilise le paramètre Exclude pour spécifier les fichiers qui seront omis de l'évaluation. Dans ce cas, comme le répertoire ne contient que des fichiers .dwg, le résultat est FALSE.
Exemple 4
C:\PS>test-path -path $profile -pathtype leaf Description ----------- Cette commande indique si le chemin d'accès stocké dans la variable $profile mène à un fichier. Dans ce cas, comme le profil Windows PowerShell est un fichier .ps1, l'applet de commande retourne TRUE.
Exemple 5
C:\PS>test-path -path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell TRUE C:\PS> test-path -path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell\ExecutionPolicy FALSE Description ----------- Les commandes suivantes utilisent l'applet de commande Test-Path avec le fournisseur Registry de Windows PowerShell. La première commande vérifie si le chemin d'accès du Registre jusqu'à la clé de Registre Microsoft.PowerShell est correct sur le système. Si Windows PowerShell est installé correctement, l'applet de commande retourne TRUE. Test-Path ne fonctionne pas correctement avec tous les fournisseurs Windows PowerShell. Par exemple, vous pouvez utiliser Test-Path pour tester le chemin d'accès jusqu'à une clé de Registre, mais si vous l'utilisez pour tester le chemin d'accès jusqu'à une entrée de Registre, elle retourne toujours FALSE, même si cette entrée de Registre est présente.
Voir aussi