1
pupboss 2015-12-07 12:35:12 +08:00 1
全部放到内存
|
2
lsmgeb89 2015-12-07 12:39:19 +08:00 1
grep 下?感觉有 UI 的编辑器 hold 不住哈
|
3
lshero 2015-12-07 12:42:22 +08:00 1
如果是一行一行的日志的话 切割成多份 一份一份的找
|
4
tracyone 2015-12-07 12:43:56 +08:00 via Android 1
grep ack ag perl …
|
5
hahasong 2015-12-07 12:46:53 +08:00 1
用 java 一行一行的读,写个循环
|
6
kokutou 2015-12-07 12:48:33 +08:00 1
winhex ...
|
7
wuxiao2522 OP |
8
Slienc7 2015-12-07 13:13:19 +08:00 1
随便什么语言 ReadLine
|
9
tracyone 2015-12-07 13:26:25 +08:00 via Android 1
@wuxiao2522 前三个是命令行程序,后面一个是脚本语言,都是用于文本查找的,特点和快慢有所不同,自己搜索下关键字和正则表达式
|
10
bk201 2015-12-07 13:27:03 +08:00 1
readline 只适合有换行符的吧,而且换行符的哪一行还得小。
按字节读取或者分割。 |
11
wuxiao2522 OP |
12
kxjhlele 2015-12-07 13:35:23 +08:00
sep 也可以把,
|
13
skydiver 2015-12-07 13:39:30 +08:00
前后两百行: grep -C 200 <strtofind> <filename>
|
14
dzxx36gyy 2015-12-07 13:44:41 +08:00 via Android
曾经我也纠结过怎么打开 23g 的某社工库 txt ……
|
16
ryd994 2015-12-07 14:00:35 +08:00 via Android
read(n)不就好了么?
多少 G 都行啊 |
18
lululau 2015-12-07 14:25:14 +08:00
如果你能估计要检索出的结果在文件中的偏移量,或者文件是有序的,可以用二分查找之类的:
# 显示一个文件中从第 50G 个字节开始的长度为 1K 字节的内容 offset=$((50*1024*1024*1024-1)) length=1024 dd if=file_name bs=1 skip="$offset" count="$length" | grep regex 如果不是这个情况,那就搞不懂这个问题到底是啥意思了 |
19
xujif 2015-12-07 14:31:44 +08:00
grep --help 就可以满足了
|
20
ixiaozhi 2015-12-07 14:53:06 +08:00
23GB 的社工库么。。。
|
21
wuxiao2522 OP @ixiaozhi 类似吧,是一本字典。
|
22
qinxi 2015-12-07 17:02:07 +08:00
如果只搜一次 那就随便 readline 如果想重复搜索 你用类似 lucene 的工具吧 不过嘛 索引会很大很大..哈哈哈哈
|
23
jasontse 2015-12-07 17:04:43 +08:00 via iPad
|
24
squid157 2015-12-07 17:30:42 +08:00
读文件才是最慢的吧
想想弄到数据库里面然后对有意义的字段加个索引多好 |
25
fxxkgw 2015-12-07 18:10:58 +08:00
grep 最快 也可以用 es
|
26
leavic 2015-12-07 18:21:27 +08:00
你该问问写这个 txt 文件的人
|
27
matrix67 2015-12-07 18:25:39 +08:00 via Android
ag 啊
|
28
xdeng 2015-12-07 18:48:58 +08:00
UE
|
29
omen 2015-12-08 13:14:37 +08:00
用 everedit 打开就可以搜索
|
30
webjin 2015-12-09 00:28:25 +08:00
@wuxiao2522 你好,怎么搞定的,有操作教程吗?
|