我刚开始使用批处理文件编程并测试变量使用时间。
有谁知道2个变量调用之间的差异,即前一个%
之前的空格@echo off
set pathOS1="\\o1511\Pcs7ProjectO1511\OS1511\GraCS\"
ECHO We're working with %pathOS1%
ECHO We're working with %pathOS1 %
因为回声不同:
We're working with "\\o1511\Pcs7ProjectO1511\OS1511\GraCS\"
We're working with \\o1511\Pcs7ProjectO1511\OS1511\GraCS\
未启用延迟扩展。
答案 0 :(得分:3)
变量名中允许使用空格。
set "data=100"
set "data =101"
echo %data%
echo %data %
set data
您有两个具有两个相似值的变量
答案 1 :(得分:0)
所以我总结了你的答案:
如果在例程开始时没有setlocal,环境中设置的任何值都保持设置,则会发生这种情况,因此如果先前设置了“pathos1”,则其值将保留,直到被“pathos1 =”设置清除为止。声明或cmd已关闭。
所以,既然我没有关闭cmd而没有设置setlocal,我调用了之前设置的变量“pathos1 =”。 这是setlocal的好例子:)