Board logo

标题: [其他] 我的批处理有什么问题:提取指定内容放到一个文本文件中 [打印本页]

作者: kingerpk    时间: 2009-1-29 16:14     标题: 我的批处理有什么问题:提取指定内容放到一个文本文件中

关于for的问题!!!!(下面是1.txt的内容:)
最先出现在中古时代的军队,就是从古代就已经存在的部落战斗团。他们逐渐发展为封建制度的军队,成为领主的。
拥有的人,每一年都需要抽出一段时间为他们的领主服军役。早期的军役是由臣属和他私人供养的专业战士来担任,为期约几个礼拜或几个月。后来,国王和有钱的领主提高职业士兵和雇佣兵的比重,来组成他们的军队。到了中古时代的后期,臣属们都以金钱直接代替军役,这种「战争税」能够帮助国王年复一年地维持他们的军队。

我的目的是显示“他们逐渐发展为封建制度的军队”
但用下面的代码总是显示  “他们逐渐发展为封建制度的军队
                                            早期的军役是由臣属和他私人供养的专业战士来担任”
这两行。

代码:
@echo off
for /f "tokens=3 delims=,。" %%a in (1.txt) do echo %%a
pause

怎样才能达到目的?


还有我想把提取出来的内容放到一个文本文件中:
@echo off
for /f "tokens=3 delims=,。" %%a in (2.txt) do echo %%a & echo %%a > e:\4.txt
pause
但是打开4.txt后只有最后一行,为什么?

[ 本帖最后由 kingerpk 于 2009-1-29 21:23 编辑 ]
作者: BBCC    时间: 2009-1-29 16:43

1
delims=,。

2
>

你的发言也有很大问题!
作者: kingerpk    时间: 2009-1-29 16:56     标题: 回复 2楼 的帖子

delims=,。有错吗?

还是不懂啊??????
作者: defanive    时间: 2009-1-29 18:02

delims=,。没错,是因为符合分割条件的有两行,第一行和第二行都符合,所以都显示出来了。。。

第二个问题,用>>
作者: lockmove    时间: 2009-1-29 18:53

  1. @echo off
  2. for /f "tokens=3 delims=,。" %%a in (1.txt) do (
  3. echo %%a
  4. goto:end
  5. )
  6. :end
  7. pause
复制代码

你试试这个.有东西代替end的,我忘记了,哎




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