问题在于ipconfig
在它的输出文本中
每行末尾都会多一个回车符(\r,CR,0x0d)
也就是它的每行行尾都是\r\r\n
多出来的\r被for/f提取到并存储到变量中
而你的例子
因为没有将空格设为delims
所以IP前的空格也被存到变量中
所以变量DNSservers的值为
<空格>218.6.132.39<回车>
而Echo变量的时候
回车符的作用是使光标回到本行行首
所以才会出现+把空格或者其它行首字符挤占的情况
如果你把加号换成其它多字符的字符串
就会发现有更多的IP字符被后面的字符串覆盖
参考:
不能说的秘密-CMD命令奇诡语法特性汇集
http://www.cn-dos.net/forum/viewthread.php?tid=50912
Last edited by qzwqzw on 2010-5-2 at 17:19 ]