Get-Item
Obtient l’élément à l’emplacement spécifié.
Syntaxe
Path (Default) - FileSystem provider
Get-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-Stream <string[]>]
[<CommonParameters>]
LiteralPath - FileSystem provider
Get-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-Stream <string[]>]
[<CommonParameters>]
Path (Default) - Certificate provider
Get-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-CodeSigningCert]
[-DocumentEncryptionCert]
[-SSLServerAuthentication]
[-DnsName <string>]
[-Eku <string[]>]
[-ExpiringInDays <int>]
[<CommonParameters>]
LiteralPath - Certificate provider
Get-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-CodeSigningCert]
[-DocumentEncryptionCert]
[-SSLServerAuthentication]
[-DnsName <string>]
[-Eku <string[]>]
[-ExpiringInDays <int>]
[<CommonParameters>]
Path (Default) - All providers
Get-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[<CommonParameters>]
LiteralPath - All providers
Get-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[<CommonParameters>]
Description
L’applet Get-Item de commande obtient l’élément à l’emplacement spécifié. Il n’obtient pas le contenu de l’élément à l’emplacement, sauf si vous utilisez un caractère générique (*) pour demander tout le contenu de l’élément.
Cette applet de commande est utilisée par les fournisseurs PowerShell pour parcourir différents types de magasins de données.
Exemples
Exemple 1 : Obtenir le répertoire actif
Cet exemple obtient le répertoire actif. Le point ('.') représente l’élément à l’emplacement actuel (et non son contenu).
Get-Item .
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 10:01 AM ps-test
Exemple 2 : Obtenir tous les éléments du répertoire actif
Cet exemple obtient tous les éléments du répertoire actif. Le caractère générique (*) représente tout le contenu de l’élément actif.
Get-Item *
Directory: C:\ps-test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 9:29 AM Logs
d---- 7/26/2006 9:26 AM Recs
-a--- 7/26/2006 9:28 AM 80 date.csv
-a--- 7/26/2006 10:01 AM 30 filenoext
-a--- 7/26/2006 9:30 AM 11472 process.doc
-a--- 7/14/2006 10:47 AM 30 test.txt
Exemple 3 : Obtenir le répertoire actuel d’un lecteur
Cet exemple obtient le répertoire actuel du C: lecteur. L’objet récupéré représente uniquement le répertoire, et non son contenu.
Get-Item C:
Exemple 4 : Obtenir des éléments dans le lecteur spécifié
Cet exemple obtient les éléments du C: lecteur. Le caractère générique (*) représente tous les éléments du conteneur, pas seulement le conteneur.
Get-Item C:\*
Dans PowerShell, utilisez un seul astérisque (*) pour obtenir le contenu, au lieu de l’astérisque traditionnel *.*. Le format est interprété littéralement, donc *.* ne récupérerait pas de répertoires ni de noms de fichiers sans point.
Exemple 5 : Obtenir une propriété dans le répertoire spécifié
Cet exemple obtient la propriété LastAccessTime du répertoire C:\Windows.
LastAccessTime n’est qu’une propriété des répertoires de système de fichiers. Pour afficher toutes les propriétés d’un répertoire, tapez (Get-Item <directory-name>) | Get-Member.
(Get-Item C:\Windows).LastAccessTime
Exemple 6 : Afficher le contenu d’une clé de Registre
Cet exemple montre le contenu du Microsoft. PowerShell clé de Registre. Vous pouvez utiliser cette applet de commande avec le fournisseur de Registre PowerShell pour obtenir des clés de Registre et des sous-clés de Registre, mais vous devez utiliser l’applet Get-ItemProperty de commande pour obtenir les valeurs et les données du Registre.
Get-Item HKLM:\Software\Microsoft\PowerShell\1\Shellids\Microsoft.PowerShell\
Exemple 7 : Obtenir des éléments dans un répertoire qui ont une exclusion
Cet exemple obtient des éléments dans le répertoire Windows avec des noms qui incluent un point (.), mais ne commencent pas par w*. Cet exemple ne fonctionne que lorsque le chemin inclut un caractère générique (*) pour spécifier le contenu de l’élément.
Get-Item C:\Windows\*.* -Exclude "w*"
Exemple 8 : Obtention d’informations de liaison matérielle
Dans PowerShell 6.2, une autre vue a été ajoutée pour obtenir des informations de lien dur. Pour obtenir les informations de liaison matérielle, dirigez la sortie vers Format-Table -View childrenWithHardlink
Get-Item C:\Windows\System32\ntoskrnl.exe |
Format-Table -View childrenWithHardLink
Directory: C:\Windows\System32
Mode LastWriteTime Length Name
---- ------------- ------ ----
la--- 5/12/2021 7:40 AM 10848576 ntoskrnl.exe
La Mode propriété identifie le lien dur par l’élément l in la---
Exemple 9 : Sortie pour les systèmes d’exploitation non Windows
Dans PowerShell 7.1 sur les systèmes Unix, l’applet Get-Item de commande fournit une sortie de type Unix :
PS> Get-Item /Users
Directory: /
UnixMode User Group LastWriteTime Size Name
-------- ---- ----- ------------- ---- ----
drwxr-xr-x root admin 12/20/2019 11:46 192 Users
Les nouvelles propriétés qui font désormais partie de la sortie sont les suivantes :
- UnixMode sont les autorisations de fichier telles que représentées sur un système Unix
- L'utilisateur est le propriétaire du fichier
- groupe est le propriétaire du groupe
- Taille correspond à la taille du fichier ou du répertoire tel qu’il est représenté sur un système Unix
Note
Cette fonctionnalité a été déplacée d’expérimentale à standard dans PowerShell 7.1.
Paramètres
-CodeSigningCert
Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur de certificat . Ce paramètre et le fournisseur Certificate sont disponibles uniquement sur Windows.
Pour obtenir des certificats qui ont Code Signing dans leur valeur de propriété EnhancedKeyUsageList , utilisez le paramètre CodeSigningCert .
Pour plus d’informations, veuillez consulter la section à propos du fournisseur de certificat.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Credential
Note
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.
Propriétés du paramètre
| Type: | PSCredential |
| Valeur par défaut: | Current user |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-DnsName
Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur de certificat . Ce paramètre et le fournisseur Certificate sont disponibles uniquement sur Windows.
Spécifie un nom de domaine ou un modèle de nom correspondant à la propriété DNSNameList des certificats que l’applet de commande obtient. La valeur de ce paramètre peut être Unicode ou ASCII. Les valeurs Punycode sont converties en Unicode. Les caractères génériques (*) sont autorisés.
Ce paramètre a été réintroduite dans PowerShell 7.1
Pour plus d’informations, veuillez consulter la section à propos du fournisseur de certificat.
Propriétés du paramètre
| Type: | DnsNameRepresentation |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-DocumentEncryptionCert
Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur de certificat . Ce paramètre et le fournisseur Certificate sont disponibles uniquement sur Windows.
Pour obtenir des certificats qui ont Document Encryption dans leur valeur de propriété EnhancedKeyUsageList , utilisez le paramètre DocumentEncryptionCert .
Pour plus d’informations, veuillez consulter la section à propos du fournisseur de certificat.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Eku
Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur de certificat . Ce paramètre et le fournisseur Certificate sont disponibles uniquement sur Windows.
Spécifie du texte ou un modèle de texte à mettre en correspondance avec la propriété EnhancedKeyUsageList des certificats que l’applet de commande obtient. Les caractères génériques (*) sont autorisés. La propriété EnhancedKeyUsageList contient le nom convivial et les champs OID de l'EKU.
Ce paramètre a été réintroduite dans PowerShell 7.1
Pour plus d’informations, veuillez consulter la section à propos du fournisseur de certificat.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Exclude
Spécifie, en tant que tableau de chaînes, un élément ou des éléments que cette applet de commande exclut dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin ou un modèle, tel que *.txt. Les caractères génériques sont autorisés. Le paramètre Exclure est efficace uniquement lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*, où le caractère générique spécifie le contenu du répertoire C:\Windows.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-ExpiringInDays
Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur de certificat . Ce paramètre et le fournisseur Certificate sont disponibles uniquement sur Windows.
Spécifie que l’applet de commande doit uniquement retourner des certificats arrivant à expiration ou avant le nombre de jours spécifié. Une valeur de zéro (0) récupère les certificats qui ont expiré.
Ce paramètre a été réintroduite dans PowerShell 7.1
Pour plus d’informations, veuillez consulter la section à propos du fournisseur de certificat.
Propriétés du paramètre
| Type: | Int32 |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Filter
Spécifie un filtre pour qualifier le paramètre Path. Le fournisseur FileSystem est le seul fournisseur PowerShell installé qui prend en charge les filtres. Les filtres sont plus efficaces que les autres paramètres. Le fournisseur applique un filtre lorsque l’applet de commande obtient les objets plutôt que d’avoir PowerShell à filtrer les objets après leur récupération. La chaîne de filtre est transmise à l’API .NET pour énumérer les fichiers. L’API prend uniquement en charge les caractères génériques * et ?.
Propriétés du paramètre
| Type: | String |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Force
Indique que cette applet de commande obtient des éléments qui ne peuvent pas être accessibles autrement, tels que les éléments masqués. L’implémentation varie du fournisseur au fournisseur. Pour plus d’informations, voir about_Providers. Même en utilisant le paramètre Force, le cmdlet ne peut pas remplacer les restrictions de sécurité.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | False |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Include
Spécifie, sous la forme d’un tableau de chaînes, un élément ou des éléments inclus dans l’opération. La valeur de ce paramètre qualifie le paramètre Path. Entrez un élément de chemin ou un modèle, tel que *.txt. Les caractères génériques sont autorisés. Le paramètre Include n’est effectif que lorsque la commande inclut le contenu d’un élément, tel que C:\Windows\*, où le caractère générique spécifie le contenu du répertoire C:\Windows.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-LiteralPath
Spécifie un chemin d’accès à un ou plusieurs emplacements. La valeur de LiteralPath est utilisée exactement comme elle est typée. 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 à PowerShell de ne pas interpréter de caractères comme séquences d’échappement.
Pour plus d'informations, consultez la section sur les règles de citation.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
| Alias: | PSPath, DP |
Jeux de paramètres
LiteralPath
| Position: | Named |
| Obligatoire: | True |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-Path
Spécifie le chemin d’accès à un élément. Cette applet de commande obtient l’élément à l’emplacement spécifié. Les caractères génériques sont autorisés. Ce paramètre est obligatoire, mais le chemin d’accès au nom du paramètre est facultatif.
Utilisez un point (.) pour spécifier l’emplacement actuel. Utilisez le caractère générique (*) pour spécifier tous les éléments à l’emplacement actuel.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
Path
| Position: | 0 |
| Obligatoire: | True |
| Valeur du pipeline: | True |
| Valeur du pipeline par nom de propriété: | True |
| Valeur des arguments restants: | False |
-SSLServerAuthentication
Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur de certificat . Ce paramètre et le fournisseur Certificate sont disponibles uniquement sur Windows.
Pour obtenir des certificats qui ont Server Authentication dans leur valeur de propriété EnhancedKeyUsageList , utilisez le paramètre SSLServerAuthentication .
Pour plus d’informations, veuillez consulter la section à propos du fournisseur de certificat.
Propriétés du paramètre
| Type: | SwitchParameter |
| Valeur par défaut: | None |
| Prend en charge les caractères génériques: | False |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
-Stream
Il s’agit d’un paramètre dynamique mis à disposition par le fournisseur FileSystem. Ce paramètre est disponible uniquement sur Windows.
Obtient le flux de données de remplacement spécifié à partir du fichier. Entrez le nom du flux. Les caractères génériques sont pris en charge. Pour obtenir tous les flux, utilisez un astérisque (*). Ce paramètre est valide sur les répertoires, mais notez que les répertoires n’ont pas de flux de données par défaut.
Ce paramètre a été introduit dans PowerShell 3.0. À partir de PowerShell 7.2, Get-Item vous pouvez obtenir d’autres flux de données à partir de répertoires et de fichiers.
Pour plus d’informations, consultez about_FileSystem_Provider.
Propriétés du paramètre
| Type: | String[] |
| Valeur par défaut: | No alternate file streams |
| Prend en charge les caractères génériques: | True |
| DontShow: | False |
Jeux de paramètres
(All)
| Position: | Named |
| Obligatoire: | False |
| Valeur du pipeline: | False |
| Valeur du pipeline par nom de propriété: | False |
| Valeur des arguments restants: | False |
CommonParameters
Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.
Entrées
String
Vous pouvez acheminer une chaîne contenant un chemin vers cette applet de commande.
Sorties
AliasInfo
La cmdlet produit ce type de sortie lorsqu'elle accède au lecteur Alias:.
X509StoreLocation
X509Store
X509Certificate2
La cmdlet produit ce type de sortie lorsqu'elle accède au lecteur Cert:.
DictionaryEntry
La cmdlet produit ce type de sortie lorsqu'elle accède au lecteur Env:.
DirectoryInfo
FileInfo
L’applet de commande génère ces types lors de l’accès aux lecteurs FileSystem.
FunctionInfo
FilterInfo
La cmdlet affiche ces types lors de l'accès aux lecteurs Function:.
RegistryKey
La cmdlet affiche ce type lors de l'accès aux lecteurs Registry.
PSVariable
L'applet de commande produit ce type de sortie lors de l'accès aux lecteurs Variable:.
WSManConfigContainerElement
WSManConfigLeafElement
La cmdlet affiche ces types lors de l'accès aux lecteurs WSMan:.
Notes
PowerShell inclut les alias suivants pour Get-Item:
- Toutes les plateformes :
gi
Cette applet de commande n’a pas de paramètre Recurse , car elle obtient uniquement un élément, et non son contenu.
Pour obtenir le contenu d’un élément de manière récursive, utilisez Get-ChildItem.
Pour parcourir le Registre, utilisez cette applet de commande pour obtenir des clés de Registre et obtenir Get-ItemProperty des valeurs et des données de Registre. Les valeurs de Registre sont considérées comme des propriétés de la clé de Registre.
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.