中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-25 22:17
47,812 主题排行 / 349,910 发帖 / 今日 0 篇 / 48,264 会员排行
DOS批处理 & 脚本技术(批处理室) » 『求助』提取指定行的内容 其他一概略过
可打印版本  2,611 / 10
第1楼 kcdsw 发表于 2006-04-25 19:37
中级用户 发帖 179 积分 404
『求助』提取指定行的内容 其他一概略过
呵呵 苦找了一下午 没找到合适的 还希望大家帮我
第2楼 zhangxue 发表于 2006-04-25 19:53
初级用户 发帖 82 积分 183
lmod好像可以。
第3楼 kcdsw 发表于 2006-04-25 20:51
中级用户 发帖 179 积分 404
呵呵 不太想借助其他软件来实现
就想用批处理~~ 呵呵
第4楼 3742668 发表于 2006-04-25 21:04
荣誉版主 发帖 718 积分 2,013
仔细翻一翻,前面发过的。
方法一 :

可以显示出第四行开始的内容,如果只想显示第四行的内容可以在后面接 &call或 &exit。
方法二:

具体情况,具体分析。
第5楼 kcdsw 发表于 2006-04-25 22:28
中级用户 发帖 179 积分 404
谢谢你的解答
呵呵 这些我都翻过了 自己也写了个
只不过效率不太高 (自己感觉)
因为每个需要分析的文件都是50多M,又想偷懒~~
我的想法就是它能不能直接读第二行 节约时间嘛

突然又有了新的想法 看了你的回复 我在想 我们用for来寻找某个字符串 而for是需要遍历的 但是我的字符串只需要1次就ok了 可以不可以用其他的命令或者 找到后就跳出for语句? 暂时思维有些混乱~~~ 请指点

[ Last edited by kcdsw on 2006-4-25 at 22:33 ]
第6楼 3742668 发表于 2006-04-25 22:42
荣誉版主 发帖 718 积分 2,013
findstr /?多看几遍,希望你能自己得到方法。
之所以给出第一种方案就是因为第一种可以跳过前三行然后结束,光看别人的是不会有多少提高的,自己多想想吧。
两种方法只要略做修改都可以提高效率。
对了,留心findstr的 {“常规表达式” 部分} + {参数 “/n” 部分},理解了这两部分可以轻松地指哪儿打哪儿。
第7楼 zhangxue 发表于 2006-04-25 22:48
初级用户 发帖 82 积分 183
Dos不支持for /f吧?
第8楼 kcdsw 发表于 2006-04-25 22:48
中级用户 发帖 179 积分 404
犯昏了


ok了 睡觉去~~ 下下侬~~

[ Last edited by kcdsw on 2006-4-26 at 14:02 ]
第9楼 kcdsw 发表于 2006-04-26 00:12
中级用户 发帖 179 积分 404
剩下的明天再改吧 第二次要从xml里边查询 因为文件小 所以不觉得影响速度

最开始用type 重定向 用find查找
后来测试findstr的时候发现它的规律后速度大为提高 1秒就能执行完 以前得分钟计算
好了 以后工作会更省力了

[ Last edited by kcdsw on 2006-4-26 at 00:14 ]

附件
新建 BMP 图像 (2).JPG (91.51 KiB)
第10楼 无奈何 发表于 2006-04-26 00:16
荣誉版主 发帖 356 积分 1,338
追求效率的话可以试试 sed

sed -n "2{p;q}" file.txt

可显示文件第二行
sed下载:http://www.student.northpark.edu/pemente/sed/gsed407x.zip
第11楼 kcdsw 发表于 2006-04-26 15:41
中级用户 发帖 179 积分 404
发现bug

更正



思路是用findstr中的$来界定最后需要查找的行
因为我需要的字符只在第二行出现所以效率还算可以
但是同样的命令在对xml文件查找的时候就出错了
最后还是用的type重定向 好在xml没有超过20kb的 所以也就这样了

对程序做了简单的优化 暂时这样吧 谢谢楼上的无奈何 兄和 楼上上的兄弟们~~

[ Last edited by kcdsw on 2006-4-26 at 15:46 ]
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023