无忧启动论坛
标题: 有办法用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 编辑
有什么不可以的!
-
捕获.PNG
(99.71 KB, 下载次数: 158)
作者: 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, 下载次数: 9)
作者: 土著007 时间: 2023-7-1 13:21
可以存一块钱进银行然后获取银行所有的钱吗


作者: nttwqz 时间: 2023-7-1 18:15
不借助第三方工具的情况下,wmic/diskpart/ps都可以做到,这个楼上几位已经回复过了。
若需要获得这个磁盘所有分区的更详细信息并利用相关变量做判断, 可以调用dpinfo来实现
简单来说,注释掉dpinfo中的启用变量延迟一行,改为在主脚本中启用,并确保利用变量之前没有endlocal,变量名没有冲突,否则dpinfo中的变量将无效,详见注释部分。
搜索脚本定制,删除中间所有内容,改为exit /b
- ::调用方法:
- call dpinfo.bat路径 >nul 2>nul
复制代码
附件是修改好的,仅供参考。
-
-
demo.7z
16.28 KB, 下载次数: 5, 下载积分: 无忧币 -2
作者: yiyu2012 时间: 2023-7-2 03:58
感谢!
作者: yiyu2012 时间: 2023-7-2 03:59
感谢!
作者: yyz2191958 时间: 2023-7-7 21:23
谢谢了
欢迎光临 无忧启动论坛 (http://wuyou.net/) |
Powered by Discuz! X3.3 |