Zobacz dostępne dyski z interfejsu wiersza polecenia systemu Windows?


98

Czy istnieje sposób na wyświetlenie listy dostępnych dysków z cmd.exe? (Inne niż ręczne pisanie

c:
d:
...

i sprawdzanie, które zwracają błędy)

Odpowiedzi:


119
> wmic logicaldisk get caption

Caption
C:
D:
E:

jeśli prawdopodobnie najłatwiejszy. Nie potrzebuje uprawnień administracyjnych, nie zwraca więcej lub mniej niż jest to potrzebne itp.

Jeśli chcesz użyć go w skrypcie, a następnie owinąć go for /fz skip=1opcją:

for /f "skip=1 delims=" %%x in ('wmic logicaldisk get caption') do @echo.%%x

1
tylko dla użytkowników z uprawnieniami administratora
Carlos Campderrós 16.04.15

1
@ CarlosCampderrós: ​​działa dobrze dla mnie z ograniczonego konta użytkownika.
Joey,

1
Cytując ze strony support.microsoft.com/en-us/kb/290216 „Wmic.exe może być używany tylko przez lokalnych administratorów systemu, niezależnie od uprawnień do przestrzeni nazw WMI na komputerze lokalnym”, a to nie powiodło się na moim komputerze (maszyna wirtualna z winXP )
Carlos Campderrós,

4
To działało dobrze pod kontem nieadministracyjnym na Windows 8.1 tutaj. Pamiętaj, że artykuł z bazy wiedzy dotyczy tylko starszych systemów operacyjnych.
Joey,

1
@Joey, dlaczego captionzamiast wmic logicaldisk get name ?
Pacerier,

64

Jeśli jesteś w wierszu polecenia:

diskpart

następnie

wolumin listy

próbka wyjściowa:

  Objętość ### Ltr Etykieta Fs Typ Rozmiar Status Informacje
  ---------- --- ----------- ----- ---------- ------- ---- ----- --------
  Tom 0 E DVD-ROM 0 B Brak nośników
  Tom 1 System Rese Partycja NTFS 100 MB Zdrowy system
  Tom 2 C System NTFS Partycja 99 GB Zdrowy rozruch
  Tom 3 F Dane (lokalna partycja NTFS 365 GB Zdrowa

i w końcu

wyjście

aby wrócić do wiersza poleceń.


w przeciwieństwie do polecenia net use , wyświetla tylko lokalne dyski fizyczne. (tak myślę.) patrz diskpart na technet i diskpart na support.microsoft.com
quack quixote

3
diskpartpotrzebuje uprawnień administracyjnych. Jeśli chcesz tylko listę liter dysku, o co trochę trzeba prosić ...
Joey

„diskpart” nie jest rozpoznawany jako polecenie wewnętrzne ani zewnętrzne,
Karl Morrison

18

Dla kompletności istnieje jeszcze inny sposób:

fsutil fsinfo drives

który zwraca:

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

(Niezbyt przyjazny dla skryptów, ale może być przydatny dla ludzkiego oka)

Niektóre odniesienia . To powinno działać od win2k, ale tylko z kontem administratora.

(Dzięki @Cllos Campderrós za poprawę odpowiedzi)


4
Należy zauważyć, że działa to tylko, jeśli korzystasz z konta administratora
Carlos Campderrós

@ CarlosCampderrós Nie sądzę, że to prawda. Mogę działać fsutilz ograniczonym użytkownikiem, a wynik jest znacznie szybszy niż rozkręcenie wmicsystemu. Na moim urządzeniu z tylko dyskami SSD z systemem Windows 10 v 1803, wmictrwa 100-200ms, a fsutilzajmuje ~ 20ms.
mrm

@mrm, niektóre wersje systemu Windows (lub wydanie lub kompilacja w10) prawdopodobnie zmniejszyły to ograniczenie. Przetestowałem to na wxp i w7pro i nie udało się to bez konta administratora (AFAIR).
saulius2

Popieram obserwację @ saulius2
Fr0zenFyr

7

Jeśli używasz programu PowerShell, możesz wpisać

get-psdrive -psprovider filesystem

Edytowane w odpowiedzi na komentarze, aby pokazać tylko systemy plików


Zwróci to także inne zamontowane napędy inne niż systemy plików, takie jak Cert :, Alias: i Funkcja :. Ponadto zwróci inne katalogi systemu plików zamontowane jako PSDrive (takie jak Strona główna: dla% UserProfile% dla mnie).
Joey

To jedyna odpowiedź, która zadziałała dla mnie. Wszystkie inne rozwiązania wymagają dostępu administratora. (Przynajmniej na moim strasznie przestarzałym systemie Windows XP.)
Ajedi32,

5

Użyj wbudowanej funkcji doskey, aby utworzyć alias, który uruchamia komendę wmic z niezbędnymi atrybutami

doskey v=wmic logicaldisk get caption

Spowoduje to utworzenie aliasu „v”, które po każdym wpisaniu uruchomi podane polecenie i wyświetli wszystkie litery woluminów.


och miło, nie wiedziałem o doskey (jak Set-Alias ​​PowerShell)
BananaAcid

Bardzo niedoceniana odpowiedź, używanie CMD od lat i nigdy nie zdawałem sobie sprawy, że pseudonimy są z tym związane.
Hashim

5
wmic logicaldisk get volumename,name

W ten sposób można uzyskać (zapytać) wiele właściwości. Otrzymasz literę partycji / dysku i etykietę, którą podałeś dyskowi / partycji podczas formatowania dysku:

Name  VolumeName
C:    OS
D:    Data
E:    Programs

Aby uzyskać pomoc i wymienić wszystkie opcje uprawnień:

wmic logicaldisk /?

następnie

wmic logicaldisk get /?

Próbowałem zdobyć literę napędu CD / DVD ROM i najbliższą rzeczą, jaką mogłem znaleźć, aby to uzyskać wmic logicaldisk get name,filesystem. Normalne napędy będą oznaczone jako NTFSlub FAT32, a system plików CD / DVD ROM będzie pusty.
akinuri

Poprawka: jeśli dysk jest pusty, system plików jest pusty. Jeśli nie, np. Mam w tej chwili dysk Windows 10 i jest on wymieniony jako UDF.
akinuri
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.