免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3849 | 回复: 12

perl不能处理大文本文件!?!?!?高手帮忙!!! [复制链接]

论坛徽章:
0
发表于 2008-05-06 15:39 |显示全部楼层
最近处理solaris大日志文件,文件大于1GB,我需要查找含有“程某某”的字符串在日志第几行,并且统计个数,为什么我写的perl程序不能找到呢????

可是其中确实有“程某某”的字符串,有3个,但是将包含“程某某”的字符串的行单独拷贝出来另存成1.txt,比1GB小,我的程序就能找到“程某某”的字符串,并统计有3个。

(    我的机器p4 2.8G 1GB 硬盘空余10GB winxp

执行命令  D:\perl\perl find.pl 1.log                          )

这是啥原因?高人请指点!谢谢!莫非perl有处理的文件大小限制???!!!

[ 本帖最后由 shangyilong 于 2008-5-8 14:15 编辑 ]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2008-05-06 15:45 |显示全部楼层
我这里是好的呀。

论坛徽章:
0
发表于 2008-05-06 16:53 |显示全部楼层
考虑一下日志文件的字符编码吧

论坛徽章:
0
发表于 2008-05-06 17:41 |显示全部楼层
贴代码

论坛徽章:
0
发表于 2008-05-06 18:21 |显示全部楼层
贴 log 文件样本

论坛徽章:
0
发表于 2008-05-06 18:33 |显示全部楼层
以前我也处理过3,4g的文件,不过perl把内存跑完了,后来改成awk跑的
:wink:

论坛徽章:
0
发表于 2008-05-06 18:35 |显示全部楼层

回复 #6 zxzzy 的帖子

你应该使用行模式才对。。

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
发表于 2008-05-06 20:34 |显示全部楼层
原帖由 zxzzy 于 2008-5-6 18:33 发表
以前我也处理过3,4g的文件,不过perl把内存跑完了,后来改成awk跑的
:wink:

这说明你的代码写的有问题。

论坛徽章:
0
发表于 2008-05-07 10:03 |显示全部楼层

回复 #2 flw 的帖子

为了防止unix和windows不同,日志已经unix2dos了,但是也不成,似乎也并不是这个原因吧?

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
发表于 2008-05-07 10:13 |显示全部楼层
原帖由 shangyilong 于 2008-5-7 10:03 发表
为了防止unix和windows不同,日志已经unix2dos了,但是也不成,似乎也并不是这个原因吧?

嗯,您说的对!
我要去别的版面灌水了,您先自个儿慢慢分析分析,有结论了分享一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP