Xem các ổ đĩa có sẵn từ Windows CLI?


98

Có cách nào để liệt kê các ổ đĩa có sẵn từ cmd.exe không? (Khác với đánh máy thủ công

c:
d:
...

và xem cái nào trả về lỗi)

Câu trả lời:


119
> wmic logicaldisk get caption

Caption
C:
D:
E:

nếu có lẽ là dễ nhất Không cần đặc quyền quản trị, không trả lại nhiều hơn hoặc ít hơn những gì cần thiết, v.v.

Nếu bạn muốn sử dụng nó trong một tập lệnh, sau đó bọc nó for /fvới skip=1tùy chọn:

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

1
chỉ dành cho người dùng có quyền quản trị viên
Carlos Campderrós

1
@ CarlosCampderrós: ​​hoạt động tốt đối với tôi từ tài khoản người dùng hạn chế.
Joey

1
Trích dẫn từ support.microsoft.com/en-us/kb/290216 "Wmic.exe chỉ có thể được sử dụng bởi các quản trị viên hệ thống cục bộ bất kể quyền truy cập không gian tên WMI trên máy cục bộ" và nó đã thất bại trên máy của tôi (VM với winXP )
Carlos Campderrós

4
Nó chỉ hoạt động tốt trong tài khoản không phải quản trị viên trên Windows 8.1 tại đây. Lưu ý rằng bài viết KB chỉ áp dụng cho các hệ điều hành cũ.
Joey

1
@Joey, Tại sao captionthay vì wmic logicaldisk get name ?
Pacerier

64

Nếu bạn đang ở trong Dấu nhắc lệnh:

đĩa

sau đó

danh sách khối lượng

đầu ra mẫu:

  Tập ### Ltr Nhãn Fs Loại Kích thước Thông tin Trạng thái
  ---------- --- ----------- ----- ---------- ------- ---- ----- --------
  Tập 0 E DVD-ROM 0 B Không có phương tiện truyền thông
  Tập 1 Hệ thống Phân vùng NTFS Rese 100 MB Hệ thống khỏe mạnh
  Tập 2 C Hệ thống phân vùng NTFS 99 GB Khởi động lành mạnh
  Tập 3 Dữ liệu F (Phân vùng NTFS cục bộ 365 GB Khỏe mạnh

và cuối cùng

lối ra

để trở về dòng lệnh.


ngược lại với lệnh sử dụng mạng , điều này sẽ chỉ liệt kê các ổ đĩa vật lý cục bộ. (tôi nghĩ vậy.) xem Diskpart tại TechnetDiskpart tại support.microsoft.com
quack quixote

3
diskpartcần đặc quyền hành chính. Nếu bạn chỉ muốn một danh sách các ký tự ổ đĩa hơi nhiều để yêu cầu ...
Joey

'Diskpart' không được công nhận là lệnh nội bộ hoặc bên ngoài,
Karl Morrison

18

Để hoàn thiện, vẫn còn một cách khác:

fsutil fsinfo drives

Trả về:

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

(Không phải là một đầu ra rất thân thiện với kịch bản, nhưng nó có thể hữu ích cho mắt người)

Một số tài liệu tham khảo . Điều đó sẽ hoạt động kể từ win2k nhưng chỉ với tài khoản Administrator.

(Cảm ơn @Carlos Campderrós vì đã nâng cao câu trả lời)


4
Cần lưu ý rằng điều này chỉ hoạt động nếu bạn đang sử dụng tài khoản Quản trị viên
Carlos Campderrós

@ CarlosCampderrós Tôi không nghĩ đó là chính xác. Tôi có thể chạy fsutilvới một người dùng hạn chế và kết quả nhanh hơn nhiều so với việc quay vòng wmichệ thống. Trên hộp của tôi chỉ có SSD chạy windows 10 v 1803, wmicmất 100-200ms và fsutilmất ~ 20ms.
mrm

@mrm, một số phiên bản windows (hoặc phát hành hoặc bản dựng của w10) có thể đã làm mất đi hạn chế này. Tôi đã thử nghiệm điều này trên wxp và w7pro và nó đã thất bại khi không có tài khoản quản trị viên (AFAIR).
saulius2

Tôi thứ hai quan sát bởi @ saulius2
Fr0zenFyr

7

Nếu bạn đang sử dụng powershell thì bạn có thể nhập

get-psdrive -psprovider filesystem

Đã chỉnh sửa để phản hồi các bình luận chỉ hiển thị các hệ thống tập tin


Điều đó cũng sẽ trả về các ổ đĩa không phải là hệ thống tập tin khác được gắn kết, chẳng hạn như Cert:, Alias: và Function :. Hơn nữa, nó sẽ trả về các thư mục hệ thống tệp khác được gắn dưới dạng PSDrive (chẳng hạn như Trang chủ: cho% UserProfile% cho tôi).
Joey

Đây là câu trả lời duy nhất làm việc cho tôi. Tất cả các giải pháp khác dường như yêu cầu quyền truy cập của quản trị viên. (Ít nhất là trên hệ thống Windows XP lỗi thời khủng khiếp của tôi.)
Ajedi32

5

Sử dụng hàm doskey được xây dựng trong hàm để tạo bí danh chạy lệnh wmic với các thuộc tính cần thiết

doskey v=wmic logicaldisk get caption

Điều này sẽ tạo ra một bí danh "v" mà bất cứ khi nào được gõ sẽ chạy lệnh đã cho và liệt kê tất cả các chữ cái âm lượng.


ồ, không biết gì về doskey (như Set-Alias ​​của powershell)
BananaAcid

Câu trả lời bị đánh giá thấp, đã sử dụng CMD trong nhiều năm và không bao giờ nhận ra bí danh là một điều với nó.
Hashim

5
wmic logicaldisk get volumename,name

Bạn có thể nhận được (truy vấn) nhiều thuộc tính theo cách này. Điều này sẽ cung cấp cho bạn phân vùng / ký tự ổ đĩa và nhãn bạn đã cho ổ đĩa / phân vùng khi bạn định dạng ổ đĩa:

Name  VolumeName
C:    OS
D:    Data
E:    Programs

Để được giúp đỡ và liệt kê tất cả các tùy chọn cấp phép:

wmic logicaldisk /?

sau đó

wmic logicaldisk get /?

Tôi đã cố gắng để có được ký tự ổ đĩa của CD / DVD ROM và thứ gần nhất tôi có thể tìm thấy để có được nó wmic logicaldisk get name,filesystem. Các ổ đĩa thông thường sẽ liệt kê dưới dạng NTFShoặc FAT32, và hệ thống tập tin của CD / DVD ROM sẽ trống.
akinuri

Sửa lỗi: nếu ổ đĩa trống, hệ thống tập tin trống. Nếu không, ví dụ tôi có đĩa Windows 10 vào lúc này và được liệt kê dưới dạng UDF.
akinuri
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.