Voir les lecteurs disponibles à partir de Windows CLI?

98

Existe-t-il un moyen de répertorier les lecteurs disponibles à partir de cmd.exe? (Autre que la saisie manuelle

c:
d:
...

et voir lesquels renvoient des erreurs)

Cristi Diaconescu
la source

Réponses:

119
> wmic logicaldisk get caption

Caption
C:
D:
E:

si probablement le plus facile. N'a pas besoin de privilèges administratifs, ne retourne pas plus ou moins que ce qui est nécessaire, etc.

Si vous voulez l'utiliser dans un script, enveloppez-le for /favec l' skip=1option:

for /f "skip=1 delims=" %%x in ('wmic logicaldisk get caption') do @echo.%%x
Joey
la source
1
réservé aux utilisateurs ayant des droits d'administrateur
Carlos Campderrós le
1
@ CarlosCampderrós: ​​fonctionne bien pour moi à partir d'un compte utilisateur limité.
Joey
1
Citant support.microsoft.com/en-us/kb/290216 "Wmic.exe ne peut être utilisé que par les administrateurs système locaux, quelles que soient les autorisations d’espace de nommage WMI sur la machine locale". La machine a échoué )
Carlos Campderrós le
4
Cela a fonctionné très bien sous un compte non-administrateur sur Windows 8.1 ici. Notez que l'article de la Base de connaissances ne s'applique qu'aux systèmes d'exploitation hérités.
Joey
1
@ Joey, pourquoi captionau lieu de wmic logicaldisk get name ?
Pacerier
64

Si vous êtes dans l'invite de commande:

partie de disque

ensuite

volume de la liste

exemple de sortie:

  Volume ### Ltr Label Fs Type Taille Statut Informations
  ---------- --- ----------- ----- ---------- ------- ---- ----- --------
  Volume 0 E DVD-ROM 0 B Pas de support
  Volume 1 Système Rese NTFS Partition 100 Mo Système sain
  Volume 2 C Partition NTFS système 99 Go Démarrage en bonne santé
  Volume 3 Données F (partition NTFS locale 365 Go saine

et enfin

sortie

pour revenir à la ligne de commande.

Mike Fitzpatrick
la source
contrairement à la commande net use , cela ne listera que les disques physiques locaux. (Je pense.) Voir diskpart à technet et diskpart à support.microsoft.com
Quack Quichotte
3
diskparta besoin de privilèges administratifs. Si vous voulez juste une liste de lettres de lecteurs, c'est un peu trop demander ...
Joey,
'diskpart' n'est pas reconnu comme une commande interne ou externe,
Karl Morrison
18

Pour être complet, il existe un autre moyen:

fsutil fsinfo drives

qui retourne:

Drives: C:\ D:\ E:\ F:\

(Pas une sortie très conviviale pour les scripts, mais elle peut être utile à l'œil humain)

Quelques références . Cela devrait fonctionner depuis win2k mais uniquement avec un compte administrateur.

(Merci @Carlos Campderrós pour l'amélioration de la réponse)

saulius2
la source
4
Il convient de noter que cela ne fonctionne que si vous utilisez un compte administrateur
Carlos Campderrós
@ CarlosCampderrós Je ne pense pas que ce soit correct. Je peux fonctionner fsutilavec un utilisateur limité et le résultat est beaucoup plus rapide que de faire tourner le wmicsystème. Sur ma boîte avec uniquement des disques SSD sous Windows 10 v 1803, wmicprend 100-200 ms et fsutilenviron 20 ms.
mme
@mrm, une version de Windows (ou une version ou une version de w10) a probablement perdu cette restriction. J'ai testé cela sur wxp et w7pro, et cela a échoué sans compte administrateur (AFAIR).
Saulius2
Je seconde l'observation de @ saulius2
Fr0zenFyr le
7

Si vous utilisez PowerShell, vous pouvez taper

get-psdrive -psprovider filesystem

Edité en réponse aux commentaires pour afficher uniquement les systèmes de fichiers

Matthew Steeples
la source
Cela renverra également d'autres lecteurs montés, autres que les systèmes de fichiers, tels que Cert :, Alias: et Function :. De plus, il renverra d'autres répertoires de système de fichiers montés en tant que PSDrive (tels que Home: for% UserProfile% for me).
Joey
C'est la seule réponse qui a fonctionné pour moi. Toutes les autres solutions semblent nécessiter un accès administrateur. (Au moins sur mon système horriblement obsolète de Windows XP.)
Ajedi32
5

Utilisez la fonction intégrée doskey pour créer un alias qui exécute la commande wmic avec les attributs nécessaires.

doskey v=wmic logicaldisk get caption

Cela créera un alias "v" qui, à chaque frappe, exécutera la commande donnée et listera toutes les lettres de volume.

utilisateur216496
la source
oh sympa, je ne savais pas à propos de doskey (comme de powershell's Set-Alias)
BananaAcid 15/06/2016
Réponse fortement sous-estimée, utilisant CMD depuis des années et ne réalisant jamais que les pseudonymes lui appartenaient.
Hashim
5
wmic logicaldisk get volumename,name

Vous pouvez obtenir (interroger) plusieurs propriétés de cette façon. Cela vous donnera la lettre partition / lecteur et l'étiquette que vous avez donné au lecteur / partition lorsque vous avez formaté le lecteur:

Name  VolumeName
C:    OS
D:    Data
E:    Programs

Pour obtenir de l'aide et répertorier toutes les options d'autorisation:

wmic logicaldisk /?

ensuite

wmic logicaldisk get /?
Marcus O'Brien
la source
J'essayais d'obtenir la lettre de lecteur du CD / DVD ROM et la chose la plus proche que j'ai pu trouver pour l'obtenir est wmic logicaldisk get name,filesystem. Les lecteurs normaux indiqueront NTFSou FAT32, et le système de fichiers du CD / DVD-ROM sera vide.
akinuri
Correction: si le lecteur est vide, le système de fichiers est vide. Si ce n’est pas le cas, j’ai par exemple un disque Windows 10, qui est répertorié comme UDF.
akinuri