Как найти все файлы, в содержимом которых есть строка "out of memory"?

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

abc123
Сообщения: 32

Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение abc123 »

Как найти все файлы, в содержимом которых есть строка "out of memory"?

Логи не можем найти))
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение serzh-z »

grep "out of memory" -R *
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение watashiwa_daredeska »

find $DIR -type f | xargs fgrep -l "out of memory"
Спасибо сказали:
Аватара пользователя
sgfault
Сообщения: 586
Статус: -

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение sgfault »

watashiwa_daredeska писал(а):
12.08.2011 12:20
find $DIR -type f | xargs fgrep -l "out of memory"

Говорят, вызов 'fgrep' устарел:

Код: Выделить всё

grep(1) из 2.6.3:
Direct  invocation  as either egrep or fgrep is deprecated, but is provided to allow historical applications that rely on them to run unmodified.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение watashiwa_daredeska »

sgfault писал(а):
12.08.2011 13:02
Говорят, вызов 'fgrep' устарел:
Он еще лет 30 в таком состоянии будет :)
Спасибо сказали:
Аватара пользователя
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение Ленивая Бестолочь »

sgfault писал(а):
12.08.2011 13:02
Говорят, вызов 'fgrep' устарел:

оу. а я не знал.
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение sash-kan »

кстати, (мне) совершенно непонятно, для чего здесь нужен -F (--fixed-strings):
watashiwa_daredeska писал(а):
12.08.2011 12:20
find $DIR -type f | xargs fgrep -l "out of memory"

Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение SLEDopit »

Кстати, интересно, а что быстрее find | xargs или find -exec (:
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение watashiwa_daredeska »

sash-kan писал(а):
14.08.2011 03:56
совершенно непонятно, для чего здесь нужен -F
Теоретически, поиск фиксированной подстроки эффективнее поиска по регулярному выражению. Опять же, теоретически, grep может сам определять, что аргумент — не регулярное выражение, и использовать более эффективный алгоритм, но я предпочитаю подсказать, если это требует всего одной лишней буквы.

SLEDopit писал(а):
14.08.2011 13:21
интересно, а что быстрее find | xargs или find -exec (:
В данном случае — find | xargs, т.к. grep'у можно передать несколько аргументов. Экономия на вызовах внешних команд.
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение SLEDopit »

watashiwa_daredeska писал(а):
14.08.2011 13:43
В данном случае — find | xargs, т.к. grep'у можно передать несколько аргументов. Экономия на вызовах внешних команд.
Это как? find'y тоже можно с разными аргументами передать.
find . -type f -exec grep -liE "smth|another_smth|etc" {} \;
В чем тут перерасход вызовов внешних команд? Или я что-то не так понял?
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
watashiwa_daredeska
Бывший модератор
Сообщения: 4038
Статус: Искусственный интеллект (pre-alpha)
ОС: Debian GNU/Linux

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение watashiwa_daredeska »

SLEDopit писал(а):
14.08.2011 14:34
В чем тут перерасход вызовов внешних команд?
Тут будет 1 вызов grep на каждый файл. А в случае xargs будет вызываться что-то вроде grep pattern file1 file2 file3… Т.е. один вызов grep сразу для кучи файлов.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Как найти все файлы, в содержимом которых есть строка "out of memory"?

Сообщение sash-kan »

watashiwa_darede... писал(а):
14.08.2011 15:41
Тут будет 1 вызов grep на каждый файл.
а если использовать форму с плюсом ("-exec command {} +"), то find будет действовать как xargs·
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали: