2014-11-22 48 views
0

我想用一個批處理文件來檢查特定的光盤是驅動器參考卷名稱,並再通過驅動器盤符,該盤是在另一個批處理文件。我設法找到幾乎適用於我的東西,但不是很完美:Get the drive letter of a given volume?。我一直試圖讓下面的工作,但語法現在不正確,我不知道在哪裏。如何檢查特定光盤並將驅動器號傳遞給另一個批處理文件?

SET "volname=Desired_Name" 
FOR %%d IN (Z Y X W V U T S R Q P O N M L K J I H G F E D C B A) DO IF EXIST %%d:\. (
FOR /f "tokens=5*" %%L IN ('VOL %%d:^|FIND /i "drive"' 
) DO IF "%%L"=="is" IF "%%M"=="%volname%" set drive=%%d & goto success 
) 
goto :eof 
:success 
success.bat %drive% 

回答

1

我算你的括號,如果我是你 - 一個比封閉更開放...


唉!現在,我已經清理我的顯示器......

我有2個DVD驅動器和發現,如果我把目標於一體,測試其移動到其他的空驅動器給了一個討厭的彈出。

所以我擺弄的代碼,並與此上來,這似乎免疫缺失的內容:

@ECHO OFF 
SETLOCAL 
SET "volname=HTML4_WCC" 
FOR %%d IN (Z Y X W V U T S R Q P O N M L K J I H G F E D C B A) DO (
FOR /f "tokens=5*" %%L IN ('VOL %%d: 2^>nul^|FIND /i "drive"' 
) DO IF "%%L"=="is" IF "%%M"=="%volname%" set drive=%%d & goto success 
) 
goto :eof 
:success 
ECHO Disc in %drive% 
GOTO :EOF 

或者,也許你有一個情況不匹配,需要if /i

+0

我已經過雙重檢查,在括號中找不到任何不匹配。你在哪裏看到它? – Ikrananka 2014-11-22 23:51:39

相關問題