Board logo

标题: 如何用dos命令查看本计算机所有盘符?统计盘符个数? [打印本页]

作者: cao7113     时间: 2008-5-6 12:15    标题: 如何用dos命令查看本计算机所有盘符?统计盘符个数?

rt,如何使用dos名令查看当前运行dos命令的计算机有几个硬盘符,向高手请教答案。联系:sdcrj@sina.com,谢谢!
作者: joyn     时间: 2008-5-6 14:09    标题: 我想不到DOS的命令~~但是我想用到WMI比较简单点^_^

@echo off
title 查询盘符
color 0a
mode con lines=15
echo strComputer = "." > ./disk.vbs
echo Set objWMIService = GetObject("winmgmts:\\" ^& strComputer ^& "\root\cimv2") >> ./disk.vbs
echo Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk",,48) >> ./disk.vbs
echo For Each objItem in colItems >> ./disk.vbs
echo        WScript.Echo objItem.Description^&"="^& objItem.DeviceID >> ./disk.vbs
echo Next >> ./disk.vbs
cscript ./disk.vbs
echo.
echo.
echo 任意键退出.....
pause >nul
exit
作者: cao7113     时间: 2008-5-7 11:35    标题: 多谢分享!不过用纯dos能实现吗?

哈哈,使用其它手段肯定能实现,多谢您的分享!
不过个人还是想能获得纯dos的解决方案。dos被称为磁盘操作系统,理论上应该能实现该功能,可能dos内部的资料较少,所以在我们看来这个功能不好实现。

可能本问题确实不好解决,不过还好,让我们平时学习时可以更深入的思考!
谢谢!
作者: joyn     时间: 2008-5-7 13:09
如果想到了分享哈~~我还没找到相关的命令
作者: clong     时间: 2008-5-7 22:03
纯DOS命令,也就是在DOS7.1运行的命令?这个有点难办……
作者: gmy     时间: 2008-5-7 22:51
纯DOS下,我有5个工具,可以解决你的问题,假设FAT和NTFS混合分区:

需要加NTFS驱动的:
func

不需要加载NTFS驱动的:
dspt
omnifs
ghost
gdisk

以上可能需要配合其它字符串提取工具find和strings等才能有实际意义(放到批处理里),只提供思路,方法自己去找。
作者: joyn     时间: 2008-5-8 00:45
CMD下可以办到就是在批处理里面还没有实现
首先在CMD下输入 diskpart 回车进入diskpart模式
在输入list volume 回车就可以看到你机器上的所有磁盘了
这个在批处理里面还没有研究过~~

[ Last edited by joyn on 2008-5-8 at 12:47 AM ]
作者: tsingfu     时间: 2010-9-21 22:29
fsutil fsinfo drives
作者: tuxw     时间: 2010-9-23 17:47
纯DOS

drv.exe | find /C ":"
这个返回的是所有盘符数

drv.exe | find /C "A:"
drv.exe | find /C "B:"
软驱,可通过批处理过滤掉

再用findcd.exe过滤掉光盘盘符,就得到硬盘符数量了

[ Last edited by tuxw on 2010-9-22 at 21:52 ]