Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Поиск в большом файле

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [*nix/Linux] >> Поиск в большом файле
Имя
Сообщение << Старые топики   Новые топики >>
Поиск в большом файле - 2011-01-11 11:48:30.220000   
Pupkin-Zade

Сообщений: 9398
Оценки: 1489
Присоединился: 2004-03-10 13:54:16
Дано: лог в 4 Гб
Как: найти в нем нужную инфу?
 
grep вешается…
Post #: 1
RE: Поиск в большом файле - 2011-01-11 11:53:30.073333   
jnpe

Сообщений: 171
Оценки: 0
Присоединился: 2010-12-10 12:14:08.143333
python? …. исходные данные вида?
Post #: 2
RE: Поиск в большом файле - 2011-01-11 12:08:58.243333   
Pupkin-Zade

Сообщений: 9398
Оценки: 1489
Присоединился: 2004-03-10 13:54:16
А, не, grep вроде ищет
Post #: 3
RE: Поиск в большом файле - 2011-01-12 07:06:32.706666   
The Joker

Сообщений: 3485
Оценки: 99
Присоединился: 2008-10-07 16:22:13.730000
grep, по идее, надёжный как лом. А ещё к ниму есть egrep и fgrep, если что.
Post #: 4
RE: Поиск в большом файле - 2011-01-13 03:34:05.866666   
Лунный Камень

Сообщений: 24
Оценки: 0
Присоединился: 2010-07-05 03:40:36.043333

quote:

ORIGINAL: Pupkin-Zade
grep вешается…


Сам grep наврядли виноватый. У меня на ноуте 8-гиговые файлы прочесывались минут за пять. Там проц 2 GHz и ОЗУ 2 гига. Версия grep'a 2.6.3
Post #: 5
RE: Поиск в большом файле - 2011-01-13 06:03:12.196666   
WinLinux

Сообщений: 491
Оценки: 0
Присоединился: 2008-07-18 14:06:33.563333
А как на счет cat + grep и перенаправление в файл?

Пример: cat my_file | grep -n "test_string" > test_string.txt

Повиснет наверное на долго, но результат должен быть ))
Post #: 6
RE: Поиск в большом файле - 2011-01-14 14:15:30.696666   
The Joker

Сообщений: 3485
Оценки: 99
Присоединился: 2008-10-07 16:22:13.730000

quote:

ORIGINAL: WinLinux

А как на счет cat + grep и перенаправление в файл?

Пример: cat my_file | grep -n "test_string" &gt; test_string.txt

Повиснет наверное на долго, но результат должен быть ))
А в чём принципиальная разница между выводом результата в консоль и в файл? На скорости это не должно отразиться…
Post #: 7
RE: Поиск в большом файле - 2011-01-16 15:10:53.966666   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: The Joker
А в чём принципиальная разница между выводом результата в консоль и в файл? На скорости это не должно отразиться…

Всё зависит от консоли и от вывода grep'а. У консоли есть некая предельная скорость, на которой она может кушать выводимые данные. Проверяется эта скорость элементарно – надо взять текстовый файлик в несколько метров, и сказать `cat big-file.txt'.
Скажем когда я собирал генту на четырёхядерном процессоре, при этом подключая кластер из десяти селеронов для дополнительного ускорения компиляции, у меня сложилось устойчивое подозрение, что подчастую ограничением скорости компиляции была консоль, куда make писала много-много флуда. Впоследствии я там запускал emerge не из консоли, а из rxvt – он побыстрее ядерной консоли. /* А кое-кто никак не может понять, на хрена серверу акселерированная графика ;) */

Интереснее зачем там нужен cat? Вот он точно лишь привносит лишние тормоза. Они правда, будут незаметны на фоне тормозов вызванными чтением файла с диска, но и тем не менее они будут: ведь данные будут читаться с диска, отдаваться в процесс cat, и оттуда через ядро передаваться в процесс grep. Лишнее прокидывание данных через ядро, лишние переключения контекстов, лишние memcpy (причём как в user-space, так и в ядре). Если бы вместо cat использовался бы dd, с настройкой размера буфера, то может быть и было бы какое-нибудь ускорение, но я в это не очень верю – ядро и само может организовать упреждающее чтение файла, да и grep не настолько туп, чтобы делать read на каждый байт.
quote:

ORIGINAL: Лунный Камень
Сам grep наврядли виноватый. У меня на ноуте 8-гиговые файлы прочесывались минут за пять. Там проц 2 GHz и ОЗУ 2 гига. Версия grep'a 2.6.3

Тут процессор и ОЗУ будут влиять лишь тогда, когда их не хватает и без grep'а. Иначе ограничителем скорости будет скорость чтения с диска. Пупкину надо систему на рейд перевести.
Post #: 8
Страниц:  [1]
Все форумы >> [*nix/Linux] >> Поиск в большом файле







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.