2014-12-07 33 views
0

我正在創建一個批處理腳本,爲此我有一個腳本給了我一個令人沮喪的錯誤。該批處理文件正在執行的位置是 C:\ Users #### \ Desktop \ Sp2 \ Sp2.bat。我希望文件提示用戶是否想要創建批處理文件。我明白了。我使用的代碼如何在批處理文件的位置創建一個文件夾

echo Would you like to create a directory to output the files to? 
set /p mkdir=[Y/N] 
if %mkdir%==Y (
    goto :mkdir 
) ELSE (
    goto :numset 
) 

這部分工作正常。現在,這裏是哪裏出了問題就出現了:「此命令的語法不正確」

:mkdir 
echo Enter a name for your folder. 
set /p foldername= 
MD %~d0\%foldername% 
goto :numset 

我這個一直給我的錯誤誰能給我解決這個問題呢?

回答

0

%~d0展開爲批處理文件的驅動器。用戶無權在驅動器的根目錄中創建文件夾。所以它永遠不會工作。

加上路徑分隔符是\不是開關字符/

1

%~d0只給你驅動器。要獲得驅動器和路徑,使用%~dp0

MD %~dp0%foldername% 

%~?0的完整列表是非常隱蔽。參見:for /?

相關問題