延迟扩展不适用于for循环

时间:2013-05-28 03:52:20

标签: batch-file

我有这个批处理脚本,我正在调用另一个批处理脚本“Strip_Batch.bat”并将%Stripped_Name%变量作为参数传递。但是这个参数不起作用。知道如何传递这个变量吗?

@echo off
setlocal enableextensions enableDelayedExpansion
set CONFIGURATIONS=HAVING_FUN_WITH_COLLEGUES
for %%i in (%CONFIGURATIONS%) do (
set Original_Name=%%i
echo !Original_Name!
set Stripped_Name=!Original_Name:~0,-14!
echo !Stripped_Name!
call Strip_Batch.bat %%i %Stripped_Name%
if errorlevel 1 goto error_exit
) 

:the_end
endlocal
exit /b 0

:error_exit
endlocal
exit /b 1

1 个答案:

答案 0 :(得分:1)

根据我的评论我先建议:

call Strip_Batch.bat %%i !Stripped_Name!

和第二个(更好,也适用于带空格的参数):

call Strip_Batch.bat "%%i" "!Stripped_Name!"
相关问题