中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-10 04:47
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何提取文本文件中连续的行! 查看 726 回复 2
楼 主 如何提取文本文件中连续的行! 发表于 2008-10-16 12:41 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 31
发帖 15
注册 2007-11-26 15:40
18年会员
UID 103825
性别 男
状态 离线
原文件a.txt内容如下:
2008100122220333333001
2008100222220333333001
2008100322220333333001
2008100422220333333001
2008100522220333333001
2008100122220444444001
2008100222220444444001
2008100322220444444001
2008100422220444444001
2008100522220444444001

批处理代码如下:
@echo off
set var1=444444
set var2=20081002
set var3=20081004
findstr "%var2%.*%var1%" a.txt>b.txt

怎么用findstr 将A.TXT里面含有var1,
从var2开始到var3结束,这个时间段的行,输出到b.txt
上面这个代码没有加入 var3变量。

b.txt的内容应该如下:
2008100222220444444001
2008100322220444444001
2008100422220444444001

[ Last edited by heyoug on 2008-10-16 at 13:54 ]
2 发表于 2008-10-16 15:14 ·  中国 浙江 杭州 联通
银牌会员
★★★
积分 1,436
发帖 739
注册 2007-10-11 17:44
18年会员
UID 99469
性别 男
状态 离线
@echo off
set var1=444444
set var2=2008100
findstr "%var2%[2-4].*%var1%" a.txt>b.txt
3 发表于 2008-10-16 20:43 ·  中国 广东 深圳 龙岗区 电信
初级用户
积分 31
发帖 15
注册 2007-11-26 15:40
18年会员
UID 103825
性别 男
状态 离线
Originally posted by abcd at 2008-10-16 03:14 PM:
@echo off
set var1=444444
set var2=2008100
findstr "%var2%.*%var1%" a.txt>b.txt


上面这个代码只能输出2-4的数据到b.txt,如果要把塞选范围从2-4扩展到2-24该怎么改写,请指点!
论坛跳转: