找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: 小白龙

[系统相关] [已解决]批处理如何获取指定盘符所在的硬盘信息

[复制链接]
发表于 2023-8-28 12:10:56 | 显示全部楼层
本帖最后由 aloha20200628 于 2025-3-23 14:10 编辑


试试这个版本》根据指定盘符(预设为c盘)获取对应的驱动器标识号(DeviceID)...

  1. @echo off &setlocal &set "drv_letter=c:"
  2. for /f "tokens=2 delims=#," %%a in (' "wmic logicaldisk where DeviceID='%drv_letter%' assoc /assocclass:Win32_LogicalDiskToPartition" ') do echo,DeviceID=%%a
  3. pause&exit/b
复制代码
发表于 2023-8-31 17:49:44 | 显示全部楼层
test-1.bat
  1. @echo off
  2. REM 设置待查看的盘符
  3. set "MyLetter=C:"
  4. for /f "tokens=1-2 delims==" %%a in ('wmic LogicalDisk where "DeviceID='%MyLetter%'" assoc:value /resultclass:Win32_DiskPartition ^| findstr /b /c:"DiskIndex=" /c:"Index="') do (
  5.     for /f "delims=" %%i in ("%%b") do (
  6.         if "%%a" equ "DiskIndex" (
  7.             set "LD2DI=%%i"
  8.         ) else if "%%a" equ "Index" (
  9.             set "LD2I=%%i"
  10.         )
  11.     )
  12. )
  13. echo Disk #%LD2DI%, Partition #%LD2I%
  14. pause
复制代码
test-2.bat
  1. @echo off
  2. REM 设置待查看的盘符
  3. set "MyLetter=C:"
  4. for /f "tokens=3 delims==" %%a in ('wmic path Win32_LogicalDiskToPartition.Dependent^="Win32_LogicalDisk.DeviceID='%MyLetter%'" get Antecedent /value') do (
  5.     set "DeviceID=%%a"
  6. )
  7. set "LD2Position=%DeviceID:~1,-3%"
  8. echo,%LD2Position%
  9. pause
复制代码
test-3.bat
  1. @echo off
  2. REM 查看系统盘符所在的硬盘和分区
  3. set "MyLetter=%SystemDrive%"
  4. for /f "tokens=3 delims==" %%a in ('wmic path Win32_LogicalDiskToPartition.Dependent^="Win32_LogicalDisk.DeviceID='%MyLetter%'" get Antecedent /value') do (
  5.     set "DeviceID=%%a"
  6. )
  7. set "LD2Position=%DeviceID:~1,-3%"
  8. echo,%LD2Position%
  9. pause
复制代码
test-4.bat
  1. @echo off
  2. REM 查看系统盘符所在的硬盘和分区
  3. for /f "tokens=2 delims==" %%i in ('wmic Partition where "BootPartition='true'" get DeviceID /value ^| find "="') do (
  4.     for %%j in ("%%i") do (
  5.         set "LD2Position=%%~j"
  6.     )
  7. )
  8. echo,%LD2Position%
  9. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 13:16 , Processed in 0.015754 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表