SETLOCAL ENABLEDELAYEDEXPANSION,中断SETLOCAL ENABLEDELAYEDEXPANSION,SETLOCAL ENABLEDELAYEDEXPANSION [英] SETLOCAL ENABLEDELAYEDEXPANSION , Interrupt SETLOCAL ENABLEDELAYEDEXPANSION, SETLOCAL ENABLEDELAYEDEXPANSION
问题描述
注意:
这不是重复的!!OF 暂时中断SETLOCAL"
NOTE:
THIS IS NOT A DUPLICATE!! OF "Temporarily interrupt SETLOCAL"
我希望能够 SETLOCAL ENABLEDELAYEDEXPANSION
然后做一些事情,然后 ENDLOCAL ENABLEDELAYEDEXPANSION
做其他事情(7z 命令)然后 SETLOCAL ENABLEDELAYEDEXPANSION
一次再次在 .bat 中!因为 7z.exe 不允许 SETLOCAL ENABLEDELAYEDEXPANSION
.看到了吗?
i want to be able to SETLOCAL ENABLEDELAYEDEXPANSION
then do something, then ENDLOCAL ENABLEDELAYEDEXPANSION
do something else (7z command) then SETLOCAL ENABLEDELAYEDEXPANSION
once again in a .bat! because 7z.exe does not allow SETLOCAL ENABLEDELAYEDEXPANSION
. see?
代码:
SETLOCAL ENABLEDELAYEDEXPANSION
Echo hi!
7z e -o"C: est" -i!*.jar "C:*.zip"
输出:嗨!
错误:不正确的命令行
当我将代码更改为:
Echo hi!
7z e -o"C: est" -i!*.jar "C:*.zip"
它有效!!!!!!
这是我目前用来中断 SETLOCAL ENABLEDELAYEDEXPANSION
的代码,不幸的是它不起作用.
here is my code so far to interrupt SETLOCAL ENABLEDELAYEDEXPANSION
, unfortunately it doesn't work.
SETLOCAL ENABLEDELAYEDEXPANSION
Echo hi!
Endlocal
7z e -o"C: est" -i!*.jar "C:*.zip"
SETLOCAL ENABLEDELAYEDEXPANSION
Echo hi!
我想把它放在另一个需要 SETLOCAL ENABLEDELAYEDEXPANSION
运行的 .bat 中
i want to put this in a different .bat which needs SETLOCAL ENABLEDELAYEDEXPANSION
to run
推荐答案
你可以这样解决你的问题:
You may solve your problem this way:
set bang=!
SETLOCAL ENABLEDELAYEDEXPANSION
Echo hi!
7z e -o"C: est" -i!bang!*.jar "C:*.zip"
请确保在禁用延迟扩展时执行 set bang=!
命令.
Just be sure that the set bang=!
command is executed when delayed expansion is disabled.
这篇关于SETLOCAL ENABLEDELAYEDEXPANSION,中断SETLOCAL ENABLEDELAYEDEXPANSION,SETLOCAL ENABLEDELAYEDEXPANSION的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!