我正在创建一个批处理脚本,我有一个脚本给了我一个令人沮丧的错误。批处理文件的位置是 C:\用户#### \桌面\ 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 :(得分:1)
%~d0
仅为您提供驱动器。要获取驱动器和路径,请使用%~dp0
:
MD %~dp0%foldername%
%~?0
的完整列表已被隐藏。请参阅:for /?
答案 1 :(得分:0)
%~d0
扩展为批处理文件的驱动器。用户无权在驱动器的根目录中创建文件夹。所以它永远不会奏效。
此外,路径分隔符为\
,而不是切换字符/
。