批处理文件中的call命令 - 全局局部变量

时间:2017-06-01 19:29:48

标签: windows batch-file cmd

我试图了解call命令的问题,特别是当批次调用第二批并且变量是全局变量还是本地变量时。

两个问题:

[第一个问题] 在下面的示例中,call命令不起作用,我认为因为second.bat中有setlocal \ endlocal,因此变量在first.bat的环境中不可见。对? (如果我在没有setlocal \ endlocal first.bat的情况下执行second.bat)。

[第二个问题] 当我在没有setlocal \ endlocal的情况下运行second.bat时,如果变量是全局变量还是非变量,我如何测试\ check \ trace?

感谢您的帮助。 GIAC

first.bat:

@echo off
setlocal enabledelayedexpansion
…
call C:\WINDOWS\system32\second.bat variable_01 variable_02
…
echo variables (worked by second.bat)
……
endlocal
@echo on

second.bat:

@echo off
setlocal enabledelayedexpansion
…
something that works variables
…
endlocal
@echo on

0 个答案:

没有答案