Get-PSDrive
Obtient les lecteurs dans la session active.
Syntaxe
Get-PSDrive
[[-Name] <String[]>]
[-Scope <String>]
[-PSProvider <String[]>]
[<CommonParameters>]
Get-PSDrive
[-LiteralName] <String[]>
[-Scope <String>]
[-PSProvider <String[]>]
[<CommonParameters>]
Description
L’applet Get-PSDrive
de commande obtient les lecteurs de la session active. Vous pouvez obtenir un lecteur particulier ou tous les lecteurs présents dans la session.
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 des fournisseurs PowerShell (tels que les lecteurs Certificate :, Function :et Alias : ) et HKLM : et HKCU : lecteurs 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 Persist de l’applet New-PSDrive
de commande peut créer des lecteurs réseau mappés enregistrés sur l’ordinateur local et disponibles dans d’autres sessions. Pour plus d’informations, consultez New-PSDrive.
De plus, depuis Windows PowerShell 3.0, lorsqu’un lecteur externe est connecté à l’ordinateur, Windows PowerShell ajoute automatiquement un lecteur PSDrive au système de fichiers qui représente le nouveau lecteur. Il n'est pas nécessaire 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 Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
Alias Alias
C 202.06 23718.91 FileSystem C:\
Cert Certificate \
D 1211.06 123642.32 FileSystem D:\
Env Environment
Function Function
HKCU Registry HKEY_CURRENT_USER
HKLM Registry HKEY_LOCAL_MACHINE
Variable Variable
Cette commande obtient les lecteurs dans la session active.
La sortie affiche le disque dur (C :), le lecteur CD-ROM (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:\foo> Get-PSDrive D
Name Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
D 1211.06 123642.32 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 Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
A A:\
C 202.06 23718.91 FileSystem C:\
D 1211.06 123642.32 FileSystem D:\
G 202.06 710.91 FileSystem \\Music\GratefulDead
Cette commande obtient tous les lecteurs qui sont pris en charge par le fournisseur de système de fichiers de Windows PowerShell. 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 New-PSDrive
de commande 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 Used (GB) Free (GB) Provider Root
---- --------- --------- -------- ----
A A:\
C 202.06 23718.91 FileSystem C:\
D 1211.06 123642.32 FileSystem D:\
G 202.06 710.91 FileSystem \\Music\GratefulDead
X Registry HKLM:\Network
PS C:\> net use
New connections will be remembered.
Status Local Remote Network
-------------------------------------------------------------------------------
OK G: \\Server01\Public Microsoft Windows Network
PS C:\> [System.IO.DriveInfo]::GetDrives() | Format-Table
Name DriveType DriveFormat IsReady AvailableFreeSpace TotalFreeSpace TotalSize RootDirectory VolumeLabel
---- --------- ----------- ------- ------------------ -------------- --------- ------------- -----------
A:\ Network False A:\
C:\ Fixed NTFS True 771920580608 771920580608 988877418496 C:\ Windows
D:\ Fixed NTFS True 689684144128 689684144128 1990045179904 D:\ Big Drive
E:\ CDRom False E:\
G:\ Network NTFS True 69120000 69120000 104853504 G:\ GratefulDead
PS N:\> Get-CimInstance -Class Win32_LogicalDisk
DeviceID DriveType ProviderName VolumeName Size FreeSpace
-------- --------- ------------ ---------- ---- ---------
A: 4
C: 3 Windows 988877418496 771926069248
D: 3 Big! 1990045179904 689684144128
E: 5
G: 4 \\Music\GratefulDead 988877418496 771926069248
PS C:\> Get-CimInstance -Class Win32_NetworkConnection
LocalName RemoteName ConnectionState Status
--------- ---------- --------------- ------
G: \\Music\GratefulDead Connected OK
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 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é (G :) créé à l’aide du paramètre Persist et New-PSDrive
d’un lecteur PowerShell (T :) créé à l’aide New-PSDrive
du paramètre Persist .
La commande net use affiche les lecteurs réseau mappés Windows, dans ce cas, il affiche uniquement le lecteur G. Il n’affiche pas le lecteur X : créé par New-PSDrive
. Il montre que le lecteur G : est également mappé à \\Music\GratefulDead.
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 G :, mais elle n’obtient pas les lecteurs créés par New-PSDrive
.
La quatrième commande utilise l’applet Get-CimInstance
de commande pour obtenir les instances de la classe Win32_LogicalDisk . Elle retourne les lecteurs A :, C :, D :, E :et G : , mais pas les lecteurs créés par New-PSDrive
.
La dernière commande utilise l’applet Get-CimInstance
de commande pour afficher les instances de la classe Win32_NetworkConnection . Comme l’utilisation nette, elle retourne uniquement le lecteur G persistant créé par New-PSDrive
.
Paramètres
-LiteralName
Spécifie le nom du lecteur.
La valeur de LiteralName 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 nom 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.
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 (FileSystem, Registry ou Certificate, par exemple).
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 valides pour ce paramètre sont :
- 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.
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 |
Entrées
None
Vous ne pouvez pas diriger les objets vers cette applet de commande.
Sorties
Cette applet de commande retourne des objets représentant les lecteurs de la session.
Notes
PowerShell inclut les alias suivants pour Get-PSDrive
:
Toutes les plateformes :
gdr
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
Get-PSProvider
commande. 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.