无忧启动论坛
标题: 有办法用cmd批处理输入盘符后获取该分区所在硬盘的所有分区盘符么? [打印本页]
作者: yiyu2012 时间: 2023-6-30 20:07
标题: 有办法用cmd批处理输入盘符后获取该分区所在硬盘的所有分区盘符么?
本帖最后由 yiyu2012 于 2023-7-2 03:58 编辑
有办法用cmd批处理输入盘符后获取该分区所在硬盘的所有分区盘符么?
作者: chishingchan 时间: 2023-6-30 20:12
估计需要用到 WMIC
作者: liuzhaoyzz 时间: 2023-6-30 20:29
5大的chkmbrpbr可以啊,我发的有帖子。
作者: conlin888 时间: 2023-6-30 20:32
本帖最后由 conlin888 于 2023-7-1 09:01 编辑
使用万能的PECMD:
set pf=C:
for /f "delims=" %%i in ('call pecmd.exe "Team/ part list drv %pf%,&pf/mstr * &pf=<-1>&pf/fdrv v=*:/forx * %%v%%,v,team part list drv %%v%%,v1|ifex '%%v1%%'='',!team@ mstr * v1=<-1>v1@ifex '%%v1%%'='%%&pf%%',set &u=%%&u%% %%v%%/mstr * &u=-1,-1,&u/writ *fv -,,&u"') do @echo %%i
pause
作者: caocaofff 时间: 2023-6-30 20:33
本帖最后由 caocaofff 于 2023-6-30 20:34 编辑
以下是chatGPT的回答:
是的,可以使用cmd批处理来获取指定分区所在硬盘的所有分区盘符。以下是一个示例的批处理脚本:
- @echo off
- setlocal enabledelayedexpansion
- set "drive=%~1"
- set "drive=!drive:~0,1!"
- for /f "skip=1 tokens=2 delims= " %%i in ('wmic logicaldisk where "drivetype=3" get deviceid^,volumename ^| findstr /i /r /c:"!drive![0-9]"') do (
- echo %%i
- )
- endlocal
复制代码
将上述代码保存为一个批处理文件(例如get_partitions.bat),然后在命令提示符中运行以下命令:
get_partitions.bat C:
其中,C:是要查询的分区盘符。脚本将输出指定分区所在硬盘的所有分区盘符。
请注意,此脚本使用了WMIC命令来获取逻辑磁盘信息,并使用了正则表达式来筛选出指定分区所在硬盘的所有分区盘符。
作者: 610644034 时间: 2023-6-30 20:51
本帖最后由 610644034 于 2023-6-30 20:58 编辑
有什么不可以的!
-
作者: batche 时间: 2023-6-30 22:28
- @echo off
- set "letter=c"
- for /f tokens^=3delims^=^"#^, %%i in ('wmic path Win32_LogicalDiskToPartition get Dependent^,Antecedent ^| findstr /ic:"DeviceID=\"%letter%:\""') do for /f tokens^=4delims^=^" %%i in ('wmic path Win32_LogicalDiskToPartition get Dependent^,Antecedent ^| find /i "Disk #%%i"') do echo,%%i
- pause
复制代码
作者: yiyu2012 时间: 2023-7-1 03:08
测试可行,感谢!
作者: yiyu2012 时间: 2023-7-1 03:12
本帖最后由 yiyu2012 于 2023-7-1 08:21 编辑
感谢。测试不可行。ChatGPT只是一个会网上找资料并总结方法的语言模型,并不会亲自运行脚本,甚至会找错资料和胡编乱造。
作者: yiyu2012 时间: 2023-7-1 03:13
感谢。
作者: dos时代菜鸟 时间: 2023-7-1 10:47
本帖最后由 dos时代菜鸟 于 2023-7-1 22:38 编辑
diskpart 实现之。
找出兄弟盘符.7z
(702 Bytes, 下载次数: 12)