有没有办法列出cmd.exe中的可用驱动器?(除了手动键入
c:
d:
...
并查看哪些返回错误)
有没有办法列出cmd.exe中的可用驱动器?(除了手动键入
c:
d:
...
并查看哪些返回错误)
Answers:
> wmic logicaldisk get caption
Caption
C:
D:
E:
如果可能是最简单的一种。不需要管理特权,返回的数量不超过所需数量,等等。
如果要在脚本中使用它,请for /f
使用以下skip=1
选项将其包装:
for /f "skip=1 delims=" %%x in ('wmic logicaldisk get caption') do @echo.%%x
caption
而不是wmic logicaldisk get name
?
如果您处于命令提示符下:
磁盘部分
然后
清单数量
样本输出:
卷### Ltr标签Fs类型大小状态信息 ---------- --- -------------- ----- ---------- ------- ---- ----- -------- 卷0 E DVD-ROM 0 B无介质 第1卷系统Rese NTFS分区100 MB运行状况良好的系统 第2卷C系统NTFS分区99 GB运行正常启动 第3卷F数据(本地NTFS分区365 GB正常
最后
出口
返回命令行。
diskpart
需要管理权限。如果您只想要要列出的驱动器盘符列表,那就有点麻烦了
为了完整起见,还有另一种方法:
fsutil fsinfo drives
返回:
Drives: C:\ D:\ E:\ F:\
(不是非常脚本友好的输出,但对人眼可能有用)
一些参考。从win2k开始应该可以使用,但只能使用管理员帐户。
(感谢@CarlosCampderrós扩大了答案)
fsutil
有限的用户范围内运行,其结果要比启动wmic
系统快得多。在我的仅装有运行Windows 10 v 1803的SSD的盒子上,wmic
需要100-200 fsutil
毫秒,大约需要20毫秒。
如果您使用的是Powershell,则可以输入
get-psdrive -psprovider filesystem
根据评论进行编辑,仅显示文件系统
使用内置的doskey函数创建一个别名,该别名将运行带有必要属性的wmic命令
doskey v=wmic logicaldisk get caption
这将创建一个别名“ v”,只要键入该别名,该别名就会运行给定命令并列出所有大写字母。
wmic logicaldisk get volumename,name
您可以通过这种方式获取(查询)多个属性。这将为您提供分区/驱动器号和格式化驱动器时给驱动器/分区的标签:
Name VolumeName
C: OS
D: Data
E: Programs
要获得帮助并列出所有权限选项:
wmic logicaldisk /?
然后
wmic logicaldisk get /?
wmic logicaldisk get name,filesystem
。普通驱动器将显示为NTFS
或FAT32
,而CD / DVD ROM的文件系统将为空。
UDF
。