[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 【已解决】批处理命令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)
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

在for in do 中不是用^做转义符吗?

TOP

没有什么特殊字符,不需要转义,除了%,用自身转义,%%a用%%%%a
1

评分人数

TOP

谁给你出的馊主意这样写代码?
Talk is cheap. Show me the code.
没事不要瞎扯淡,有能耐就把代码贴出来给我看。

TOP

问题得到解决后请在标题最前面注明[已解决]
http://www.bathome.net/thread-3473-1-1.html

TOP

回复 4# gawk


    这个代码怎么了?
有什么问题吗?

TOP

回复 6# chouxia


编程时要保持这种心态:就好象将来要维护你这些代码的人是一位残暴的精神病患者,而且他知道你住在哪。(Martin Golding)
Talk is cheap. Show me the code.
没事不要瞎扯淡,有能耐就把代码贴出来给我看。

TOP

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

TOP

返回列表