Board logo

标题: [其他] 【已解决】批处理命令for /f的转义符问题 [打印本页]

作者: chouxia    时间: 2015-4-11 17:36     标题: 【已解决】批处理命令for /f的转义符问题

本帖最后由 chouxia 于 2015-4-16 16:29 编辑

现在想由批处理输出下面代码到另一个批处理。
转义符搞的我蒙圈
麻烦帮我搞下,让我有个长经验值的机会。
echo for /f ^"tokens^=1^,2^,^* delims^==^"^  ^%%%a in^ ^(^'findstr ^"num^" ^/i ^\\file^\vdisk\1aep\^!aepname^!.txt^'^) do ^(set num^=^%%%b)>>\\file\udisk!inipath!\ak47.bat
echo for /f ^"tokens^=1^,2^,^* delims^==^"^  ^%%%c in^ ^(^'find ^"jishu^" ^/i ^\\file^\vdisk\1aep\^!aepname^!.txt^'^) do ^(set jishu^=^%%%d)>>\\file\udisk!inipath!\ak47.bat
在这个情况下^转义符是否生效?
为什么输出结果是:
for /f "tokens=1,2,* delims=="  %%b)
for /f "tokens=1,2,* delims=="  %%d)
作者: chouxia    时间: 2015-4-11 18:03

在for in do 中不是用^做转义符吗?
作者: pcl_test    时间: 2015-4-11 18:20

没有什么特殊字符,不需要转义,除了%,用自身转义,%%a用%%%%a
作者: gawk    时间: 2015-4-11 20:57

谁给你出的馊主意这样写代码?
作者: pcl_test    时间: 2015-4-12 14:17

问题得到解决后请在标题最前面注明[已解决]
http://www.bathome.net/thread-3473-1-1.html
作者: chouxia    时间: 2015-4-22 13:31

回复 4# gawk


    这个代码怎么了?
有什么问题吗?
作者: gawk    时间: 2015-4-22 13:35

回复 6# chouxia


编程时要保持这种心态:就好象将来要维护你这些代码的人是一位残暴的精神病患者,而且他知道你住在哪。(Martin Golding)
作者: chouxia    时间: 2015-4-22 14:11

呵呵呵呵呵呵呵    我明白了   你这个形容真是..................




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2