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

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

关于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 编辑 ]

1
delims=,。

2
>

你的发言也有很大问题!
for /f "delims=" %%a in ('%0') do (echo %%a)

TOP

回复 2楼 的帖子

delims=,。有错吗?

还是不懂啊??????

TOP

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

第二个问题,用>>

TOP

  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的,我忘记了,哎

TOP

返回列表