询问: Linux 下大文件内容查找

2017 年 5 月 8 日
 ceshi123

问一下各位大神,现在有个日志文件的大小为 2.5 个 g,在 linux 下有什么命令可以打开这个文件,并且在里面搜索特定的内容吗,比如我要在这个日志中搜索订单号,效率高点的命令

12908 次点击
所在节点    Linux
40 条回复
lululau
2017 年 5 月 8 日
lnav 不过你可能需要自定义 formatter
holyghost
2017 年 5 月 8 日
。。。。。。。。。。。。。。。。。。

grep
rootit
2017 年 5 月 8 日
linux 三剑客 awk sed grep
ceshi123
2017 年 5 月 8 日
现在主要担心的是,用命令打开整个文件,根本打不开,肯定不能一次性全部读入内存吧,是不是存在某个命令,可以设定缓冲区
begeekmyfriend
2017 年 5 月 8 日
open/lseek/read == open/pread
ldbC5uTBj11yaeh5
2017 年 5 月 8 日
大兄弟这发帖吞吞吐吐,大家只能高来高去的回你。估计你这求助要吃瘪了。。。
byfar
2017 年 5 月 8 日
之前看到有个 V 友用 vim 打开了 1.5G 的日志文件,用了 17 秒,没记错的话,不过不知道能不能进行查询等相关操作
bsidb
2017 年 5 月 8 日
@ceshi123 grep 等命令是一行一行读入的,慢是慢点,但不用担心内存爆掉。
Lycnir
2017 年 5 月 8 日
awk 处理快
syahd
2017 年 5 月 8 日
less,more,grep,sed.如果是看得话,就用 less 就够了
htfy96
2017 年 5 月 8 日
不要太担心 grep 这些上古工具的内存占用
yuedingwangji
2017 年 5 月 8 日
才 2,5G 三剑客随便挑
ryd994
2017 年 5 月 8 日
“现在主要担心的是,用命令打开整个文件,根本打不开”
没有恶意,楼主你是 PHP 程序员么?
rrfeng
2017 年 5 月 8 日
less 会吃内存,不要用。
fxxkgw
2017 年 5 月 8 日
我怀疑你是培训班出来的
tkisme
2017 年 5 月 8 日
@fxxkgw 瞎说什么大实话
用 grep、sed、awk 加点正则就行
UnknownR
2017 年 5 月 8 日
个人习惯,grep 查进程什么的用的比较多,sed 和 awk 查文本比较多
tolerance
2017 年 5 月 8 日
数据单次利用还是重复利用,
若单次利用 grep 足以;
若须反复利用,建议将数据导入数据库,根据搜索的维度(如订单号)建立索引,根据业务复杂度选择关系型或者 NOSQL 数据库。
billlee
2017 年 5 月 8 日
@ryd994 #13 应该是 gedit/nano/notepad 程序猿吧
JiaZombie
2017 年 5 月 8 日
“现在主要担心的是,用命令打开整个文件,根本打不开” ,之前 vim 打开 3GB+的文件,没什么问题。
找内容上面已经说得很清楚了,awk, sed, grep。。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/359911

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX