我尝试执行简单的脚本:
set list="a",^
"b",^
c
echo %list%
输出是
"a","b",a","b",^
虽然我预计它是“a”、“b”、c。
引号似乎破坏了一切,因为如果 b 没有引号,则一切正常。我也很奇怪为什么它只在第二条新线转义时中断。
那么,为什么输出如此奇怪呢?
如果重要的话,我尝试在 Windows 7 上启动该脚本
有趣的问题!似乎当^
位于行尾,下一行的第一个字符是not已解析,但按字面意思插入到结果中without正在被解析器处理。如果此类字符必须平衡(如引号或括号),那么这会导致奇怪的“错误”,否则将与“不平衡字符”相关联。
如果你改变第一个字符。在之后的行中^
,问题消失。例如插入一个空格:
set list="a",^
"b",^
c
...或移动逗号:
set list="a"^
,"b"^
,c
...或者只是删除引用(正如您已经测试过的那样)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)