Get-PSDrive
Obtient les lecteurs dans la session active.
Syntaxe
Get-PSDrive
[[-Name] <String[]>]
[-Scope <String>]
[-PSProvider <String[]>]
[-UseTransaction]
[<CommonParameters>]
Get-PSDrive
[-LiteralName] <String[]>
[-Scope <String>]
[-PSProvider <String[]>]
[-UseTransaction]
[<CommonParameters>]
Description
L’applet de commande Get-PSDrive
Cette applet de commande obtient les types de lecteurs suivants :
- Lecteurs logiques Windows sur l’ordinateur, y compris les lecteurs mappés aux partages réseau.
- Lecteurs exposés par les fournisseurs Windows PowerShell (tels que les lecteurs Certificate :, Function :, and Alias : drive) et HKLM : and HKCU : drives qui sont exposés par le fournisseur de Registre Windows PowerShell.
- Lecteurs temporaires spécifiés par session et lecteurs réseau mappés persistants que vous créez à l’aide de l’applet de commande New-PSDrive.
À compter de Windows PowerShell 3.0, le paramètre
En outre, à partir de Windows PowerShell 3.0, lorsqu’un lecteur externe est connecté à l’ordinateur, Windows PowerShell ajoute automatiquement un PSDrive au système de fichiers qui représente le nouveau lecteur. Vous n’avez pas besoin de redémarrer Windows PowerShell. De même, lorsqu’un lecteur externe est déconnecté de l’ordinateur, Windows PowerShell supprime automatiquement le PSDrive qui représente le lecteur supprimé.
Exemples
Exemple 1 : Obtenir des lecteurs dans la session active
PS C:\> Get-PSDrive
Name Provider Root
---- -------- ----
Alias Alias
C FileSystem C:\
Cert Certificate \
D FileSystem D:\
Env Environment
Function Function
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
Variable Variable
Cette commande obtient les lecteurs de la session active.
La sortie affiche le disque dur (C :), CD-ROM lecteur (D :) et les lecteurs exposés par les fournisseurs Windows PowerShell (Alias :, Cert :, Env :, Function :, HKCU :, HKLM :et Variable :).
Exemple 2 : Obtenir un lecteur sur l’ordinateur
PS C:\> Get-PSDrive D
Name Provider Root
---- -------- ----
D FileSystem D:\
Cette commande obtient le lecteur D : sur l’ordinateur. Notez que la lettre de lecteur dans la commande n’est pas suivie d’un signe deux-points.
Exemple 3 : Obtenir tous les lecteurs pris en charge par le fournisseur de système de fichiers Windows PowerShell
PS C:\> Get-PSDrive -PSProvider FileSystem
Name Provider Root
---- -------- ----
C FileSystem C:\
D FileSystem D:\
X FileSystem X:\
Y FileSystem \\Server01\Public
Z FileSystem C:\Windows\System32
Cette commande obtient tous les lecteurs pris en charge par le fournisseur Windows PowerShell FileSystem.
Cela inclut les lecteurs fixes, les partitions logiques, les lecteurs réseau mappés et les lecteurs temporaires que vous créez à l’aide de l’applet de commande New-PSDrive
.
Exemple 4 : Vérifier si un lecteur est utilisé en tant que nom de lecteur Windows PowerShell
if (Get-PSDrive X -ErrorAction SilentlyContinue) {
Write-Host 'The X: drive is already in use.'
} else {
New-PSDrive -Name X -PSProvider Registry -Root HKLM:\SOFTWARE
}
Cette commande vérifie si le lecteur X est déjà utilisé en tant que nom de lecteur Windows PowerShell.
Si ce n’est pas le cas, la commande utilise l’applet de commande New-PSDrive
pour créer un lecteur temporaire mappé à la clé de Registre HKLM :\SOFTWARE.
Exemple 5 : Comparer les types de lecteurs système de fichiers
PS C:\> Get-PSDrive -PSProvider FileSystem
Name Provider Root
---- -------- ----
C FileSystem C:\
D FileSystem D:\
X FileSystem X:\
Y FileSystem \\Server01\Public
Z FileSystem C:\Windows\System32
PS C:\> net use
New connections will be remembered.
Status Local Remote Network
-------------------------------------------------------------------------------
X: \\Server01\Public Microsoft Windows Network
PS C:\> [System.IO.DriveInfo]::GetDrives()
Name : C:\
DriveType : Fixed
DriveFormat : NTFS
IsReady : True
AvailableFreeSpace : 39831498752
TotalFreeSpace : 39831498752
TotalSize : 79900368896
RootDirectory : C:\
VolumeLabel :
Name : D:\
DriveType : CDRom
DriveFormat :
IsReady : False
AvailableFreeSpace :
TotalFreeSpace :
TotalSize :
RootDirectory : D:\
VolumeLabel :
Name : X:\
DriveType : Network
DriveFormat : NTFS
IsReady : True
AvailableFreeSpace : 36340559872
TotalFreeSpace : 36340559872
TotalSize : 36413280256
RootDirectory : X:\
VolumeLabel : D_Drive
PS C:\> Get-WmiObject Win32_LogicalDisk
DeviceID : C:
DriveType : 3
ProviderName :
FreeSpace : 39831252992
Size : 79900368896
VolumeName :
DeviceID : D:
DriveType : 5
ProviderName :
FreeSpace :
Size :
VolumeName :
DeviceID : X:
DriveType : 4
ProviderName : \\server01\public
FreeSpace : 36340559872
Size : 36413280256
VolumeName : D_Drive
PS C:\> Get-WmiObject Win32_NetworkConnection
LocalName RemoteName
-------------- ------------
x: \\server01\public
Cet exemple compare les types de lecteurs de système de fichiers affichés par Get-PSDrive à ceux affichés à l’aide d’autres méthodes. Cet exemple montre différentes façons d’afficher des lecteurs dans Windows PowerShell et montre que les lecteurs temporaires spécifiques à la session créés à l’aide de l’applet de commande New-PSDrive sont accessibles uniquement dans Windows PowerShell.
La première commande utilise Get-PSDrive pour obtenir tous les lecteurs du système de fichiers dans la session.
Cela inclut les lecteurs fixes (C : et D :), un lecteur réseau mappé (X :) créé à l’aide du paramètre
Une commande net use, qui affiche les lecteurs réseau mappés Windows, affiche uniquement le lecteur X. Il n’affiche pas les lecteurs Y : et Z : qui ont été créés par New-PSDrive. Il indique que le lecteur X : est également mappé à \\Server01\Public.
La troisième commande utilise la méthode GetDrives de la classe Microsoft .NET Framework System.IO.DriveInfo. Cette commande obtient les lecteurs du système de fichiers Windows, y compris le lecteur X :, mais elle n’obtient pas les lecteurs temporaires créés par New-PSDrive.
La quatrième commande utilise l’applet de commande Get-WmiObject pour obtenir les instances de la classe Win32_LogicalDisk. Elle retourne les lecteurs C :, D :et X : mais pas les lecteurs temporaires créés par New-PSDrive.
La dernière commande utilise l’applet de commande Get-WmiObject pour afficher les instances de la classe Win32_NetworkConnection. Comme l’utilisation nette, elle retourne uniquement le lecteur X : persistant qui a été créé par New-PSDrive.
Paramètres
-LiteralName
Spécifie le nom du lecteur.
La valeur de LiteralName est utilisée exactement comme il est typé. Aucun caractère n’est interprété comme des caractères génériques. Si le nom inclut des caractères d’échappement, placez-le entre guillemets simples. Les guillemets simples indiquent à Windows PowerShell de ne pas interpréter de caractères comme séquences d’échappement.
Type: | String[] |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | True |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Name
Spécifie, en tant que tableau de chaînes, le nom ou le nom des lecteurs que cette applet de commande obtient dans l’opération. Tapez le nom ou la lettre du lecteur sans signe deux-points (:).
Type: | String[] |
Position: | 0 |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-PSProvider
Spécifie, en tant que tableau de chaînes, le fournisseur Windows PowerShell. Cette applet de commande obtient uniquement les lecteurs pris en charge par ce fournisseur. Tapez le nom d’un fournisseur, tel que FileSystem, Registry ou Certificate.
Type: | String[] |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
Accepter les caractères génériques: | False |
-Scope
Spécifie l’étendue dans laquelle cette applet de commande obtient les lecteurs.
Les valeurs acceptables pour ce paramètre sont les suivantes :
- Global
- Local
- Script
- nombre relatif à l’étendue actuelle (0 au nombre d’étendues, où 0 est l’étendue actuelle et 1 est son parent). « Local » est la valeur par défaut. Pour plus d’informations, consultez about_Scopes (https://go.microsoft.com/fwlink/?LinkID=113260).
Type: | String |
Position: | Named |
Valeur par défaut: | None |
Obligatoire: | False |
Accepter l'entrée de pipeline: | True |
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.
Type: | SwitchParameter |
Alias: | usetx |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Vous ne pouvez pas diriger les objets vers cette applet de commande.
Sorties
Cette applet de commande retourne des objets qui représentent les lecteurs de la session.
Notes
- 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, utilisez l’applet de commande Get-PSProvider. Pour plus d’informations, consultez about_Providers.
- Les lecteurs réseau mappés créés à l’aide du paramètre Persist de l’applet de commande New-PSDrive sont spécifiques à un compte d’utilisateur. Les lecteurs réseau mappés que vous créez dans les sessions démarrées avec l’option Exécuter en tant qu’administrateur ou avec les informations d’identification d’un autre utilisateur ne sont pas visibles dans les sessions démarrées sans informations d’identification explicites ou avec les informations d’identification de l’utilisateur actuel.