Board logo

标题: [文本处理] 批处理命令for循环中%%I为何把字符串空格后面的部分丢掉了? [打印本页]

作者: beber    时间: 2013-12-1 22:36     标题: 批处理命令for循环中%%I为何把字符串空格后面的部分丢掉了?

小弟需求如下描述:
现有一个关键字列表文件aaa.txt,内容如下:
I6BKUP
MSG PURGE
RESIN3
SYIITG

其中每一行存一个关键字,即“MSG PURGE”整体作为一个关键字看待。
现在准备利用for循环中的%%I变量遍历aaa.txt文件中的每一个关键字
  1. FOR /F %%I IN (aaa.txt) DO ECHO %%I
复制代码
此时输出结果是
I6BKUP
MSG
RESIN3
SYIITG

即“MSG PURGE”中空格后面的部分丢掉了,如何解决这个问题?请大侠指教,谢谢!
作者: wankoilz    时间: 2013-12-1 23:37

FOR /F “delims=” %%I IN (aaa.txt) DO ECHO %%I
默认的分隔符是空格,所以空格后的被丢掉了。“delims=”表示取消分隔符
作者: DAIC    时间: 2013-12-3 11:32

回复 2# wankoilz


需要使用英文双引号
  1. FOR /F "delims=" %%I IN (aaa.txt) DO ECHO %%I
复制代码





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