批处理获取硬盘容量
如何实现批处理获取sata0端口硬盘容量,并将该硬盘的赋值给某个变量 能用WMIC否? wmic diskdrive get Size/value不能用wmic 我編程了一個 Delphi EXE.
已測試在
Real OS : Windows 7 X64.
VM OS : Windows XP.
其实,fsutil可以获取硬盘容量,不过不知道怎么确定哪个端口 @echo off
setlocal enabledelayedexpansion
for /f "tokens=2,4,5" %%a in ('echo list disk ^| diskpart ^| find "B"') do (
for /f "tokens=1,2 delims=: " %%d in ('(echo sel disk %%a ^& echodetail disk^) ^| diskpart ^| findstr /i "类型 路径"') do (
if "%%d"=="类型" if /i "%%e"=="SATA" set sata=yes
if "!sata!"=="yes" if "%%d"=="路径" if "%%e"=="0" set "disk-0=%%b %%c" && goto end
)
)
:end
echo SATA 0 硬盘容量:%disk-0%
pause
正确与否不得而知,我只有一个硬盘接口。
以上命令简单讲,就是选中各个磁盘查看其信息,看是否符合下面的条件,然后获取容量,不过路径:0到底是不是0口,就不知道了。
类型 : SATA
路径 : 0 diskpart可以获取,但不知道怎样把获取的值(0号硬盘,1号硬盘,2号硬盘),传给自己定义的变量diskid 我想实现的要判断硬盘端口号是0,1,2 我想实现的要判断硬盘端口号是0,1,2中的那个 hurry307 发表于 2018-1-1 18:19
我想实现的要判断硬盘端口号是0,1,2
我的批处理不就是这样写的吗?具体是不是你自己测试。 hurry307 发表于 2018-1-1 18:17
diskpart可以获取,但不知道怎样把获取的值(0号硬盘,1号硬盘,2号硬盘),传给自己定义的变量diskid
那你应该在主帖中写清楚,你的主帖中只说了0
可以改一下,用for获取
页:
[1]