标题: [文本处理] 批处理set命令替换文本碰到TAB为何出错? [打印本页]
作者: 冷玉公子 时间: 2011-6-11 19:39 标题: 批处理set命令替换文本碰到TAB为何出错?
文本内容例如:复制代码
其中复制代码
之间是TAB键
我用命令- For /f %%a in (1.txt) do (
- Set Var=%%a
- Set Var=!Var:关键字=字关键!
- Echo !Var!)
复制代码
碰到TAB键以后 结果会变成- 我是内容
-
- 关键字
- 关键字 aaaa
- 关键字=字关键
- 关键字=字关键
- 内容dddd
复制代码
作者: CrLf 时间: 2011-6-11 20:25
输出时用:
Echo;!Var!
作者: 冷玉公子 时间: 2011-6-11 20:34
2# zm900612
不行哦
作者: CrLf 时间: 2011-6-11 20:36
本帖最后由 zm900612 于 2011-6-11 20:39 编辑
- For /f "delims=" %%a in (1.txt) do (
- Set Var=%%a
- Set Var=!Var:关键字=字关键!
- Echo;!Var!
- )
复制代码
问题有两个:
是默认的分隔符是tab、全角空格、半角空格,所以必须用delims=来防止tab被排除
还有echo tab时必须用echo;tab
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |