Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 延迟扩展不适用于for循环_Batch File - Fatal编程技术网

Batch file 延迟扩展不适用于for循环

Batch file 延迟扩展不适用于for循环,batch-file,Batch File,我有这个批处理脚本,我调用另一个批处理脚本“Strip\u batch.bat”,并将%Stripped\u Name%变量作为参数传递。但是这个参数不起作用。知道如何传递这个变量吗 @echo off setlocal enableextensions enableDelayedExpansion set CONFIGURATIONS=HAVING_FUN_WITH_COLLEGUES for %%i in (%CONFIGURATIONS%) do ( set Original_Name=%

我有这个批处理脚本,我调用另一个批处理脚本“Strip\u batch.bat”,并将
%Stripped\u 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

根据我的评论,我首先建议:

call Strip_Batch.bat %%i !Stripped_Name!
第二个(更好,也适用于带空格的参数):


调用Strip\u Batch.bat%%i!你的名字。很抱歉,它也不起作用:-(
调用Strip\u Batch.bat“%%i”“!Stripped\u Name!”
:)不,它也不起作用。请参阅我的第二个批处理文件@echo off setlocal enableextensions enableDelayedExpansion set Param1=MyName\u%1 set Param2=MyName\u%2 echo Param1:%Param1%echo Param2:%Param2%endlocalCool它现在仅适用于您的第一个解决方案..调用Strip\u Batch.Batch%%i!你的名字!。。。。我在第二批脚本中犯了一个错误。非常感谢:-)
call Strip_Batch.bat "%%i" "!Stripped_Name!"