好的,我一直在玩这个脚本,由于某些未知原因,当脚本到达 for 语句时,它总是崩溃(退出提示符),但是,如果我只是将这些命令逐个复制并粘贴到 cmd 中,它就可以正常工作。有人能告诉我这是为什么吗,或者我该如何解决这个问题?谢谢
@echo off
CD C:\RemoteInstall\Boot\
set /p name=Enter the wim file name (no extension):
SET name=%name:~0%.wim
echo+ %name%
timeout >nul 2
FOR /f "tokens=*" %a in ('dir "%name%" /b /s') do set p=%~a
SET p=%p:~0%
echo %p%
timeout >nul 2
xcopy "%p%" C:\imagefix\image /y
timeout >nul 2
pause
答案1
好吧,我自己解决了这个问题,原来我必须避开 FOR 语句中的分隔符,现在看起来像这样
FOR /f "tokens=*" %%a in ('dir "%name%" /b /s') do set p=%%~a