中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-08 03:47
48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » 如何提出文本文件中某固定行的前第一行内容?
可打印版本  1,023 / 8
第1楼 cain 发表于 2007-08-11 10:42
中级用户 发帖 72 积分 201
如何提出文本文件中某固定行的前第一行内容?
一个文本文件中有二十多行,某行的中有一固定字符是“ABC”,想通过这个固定字符的行查找出在它前面的前第一行的内容(即要查找的行与有固定字符的行中间隔着一行),并使之成为变量。(在XP的命令行中操作,尽量不用第三方工具)
如:

......
......
......
skfsljfk (此行即是要查找的行,内容变化的)
aaafdssd
ABC (此行内容是固定的,为ABC)
......
......
第2楼 ansipeter 发表于 2007-08-11 11:07
中级用户 发帖 130 积分 269
感觉代码还是有些臃肿,没有测试,先试试吧



[ Last edited by ansipeter on 2007-8-11 at 11:09 AM ]
第3楼 cain 发表于 2007-08-11 11:21
中级用户 发帖 72 积分 201
终于测试成功了,谢谢。
另外有没有更简单的代码呢?

[ Last edited by cain on 2007-8-11 at 11:50 AM ]
第4楼 tao0610 发表于 2007-08-11 12:33
高级用户 发帖 218 积分 579
过多的管道符会影响速度.

第5楼 cain 发表于 2007-08-11 14:55
中级用户 发帖 72 积分 201
4楼的代码很不错,可惜如果ABC这个固定的字符换成:“CC ABC”即有空格的字符就会出错,请问该如何改呢?
第6楼 ansipeter 发表于 2007-08-11 15:09
中级用户 发帖 130 积分 269
其实我还是劝楼主多看看帮助,我想即使你看了帮助也不是很认真
把这句改成
for /f "delims=:" %%a in ('findstr/nx /c:"CC ABC" test.txt') do set/a row=%%a-
3
试试
第7楼 flyingphf 发表于 2008-04-15 19:34
中级用户 发帖 142 积分 392
4楼的,我运行你的文件怎么显示错误啊
第8楼 maidu 发表于 2008-04-15 19:36
社区乞丐 发帖 40 积分 -66
这个问题很简单啊
第9楼 flyingphf 发表于 2008-04-17 08:16
中级用户 发帖 142 积分 392
?
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023