如何在 MS WIndows 7 中通过批处理文件检测 DVD 驱动器号?

如何在 MS WIndows 7 中通过批处理文件检测 DVD 驱动器号?

如何在 MS WIndows 7 中通过批处理文件检测 DVD 驱动器号?

我的意思是,我需要知道 DVD 可以分配字母 D 或 E...

有脚本可以做到这一点吗?

答案1

我需要知道 DVD 可以分配字母 D 或 E

wmic将向您提供此信息。

示例输出:

F:\test>wmic logicaldisk get deviceid, drivetype
DeviceID  DriveType
C:        3
D:        5
E:        2
F:        3

笔记:

DriveType   Meaning
 1          No root directory
 2          Removable drive
 3          Local hard disk
 4          Network disk
 5          Compact disk
 6          RAM disk

以下批处理文件将输出 DVD/CD 驱动器的驱动器号 (GetCD.cmd):

@echo off
setlocal
for /f "skip=1 tokens=1,2" %%i in ('wmic logicaldisk get caption^, drivetype') do (
  if [%%j]==[5] echo %%i
  )
endlocal

示例输出:

F:\test>GetCD
D:

F:\test>

进一步阅读

笔记:

答案2

好的。我使用此代码找到了解决方案

@echo off
cd /d "%~dp0"
cls
echo Your %~d0 drive.
cd %~d0
dir
cd temp
pause

答案3

我找到了另一个选项,寻找预定义的文件。


对于 (CDEFGHIJKLMNOPQRSYZ) 中的 %%i 执行 (

if exist %%i:\sources\boot.wim call :MEDIA %%i

:媒体

设置驱动器=%1:\

echo 设置驱动器=%1:\

答案4

for /f eol^=^/^ ^usebackq^ ^tokens^=4*^ ^delims^=^<^> %# in =;(` wmic.exe logicaldisk where drivetype^=5 get deviceid /format:xml ^| find "VALUE"`);= do @for /f eol^=^/^ ^usebackq^ ^tokens^=4*^ ^delims^=^<^> %@ in =;(`wmic.exe cdrom get volumename /format:xml ^| find "VALUE" `);= do @echo/DeviceID=%# VolumeName=%@

echo off

for /f eol^=^/^ ^usebackq^ ^tokens^=4*^ ^delims^=^<^> %%# in =;(`
     wmic.exe logicaldisk where drivetype^=5 get deviceid /format:xml ^| find "VALUE"
    `);= do for /f eol^=^/^ ^usebackq^ ^tokens^=4*^ ^delims^=^<^> %%@ in =;(`
         wmic.exe cdrom get volumename /format:xml ^| find "VALUE" ^| more
        `);= do echo/DeviceID=%%# VolumeName=%%@
  • 结果/输出:
DeviceID=D: VolumeName=FINDING_NEMO

相关内容