The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Редактирование большого файла"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"Редактирование большого файла"  +/
Сообщение от 2look (ok) on 14-Июл-09, 17:18 
Друзья,
как в большом текстовом файле убрать строки в которых не одно ключевое слово, а несколько?
Чтоб было понятней: нужно безболезненно из access.log убрать строки в которых определенный ip адресс ломится на определенные сайты. Все остальные надписи с этим айпишником должны остаться, все остальные (те же) сайты (на других айпишниках) должны остаться.
спасибо.
Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Редактирование большого файла"  +/
Сообщение от ALex_hha (ok) on 14-Июл-09, 17:35 
>Друзья,
>как в большом текстовом файле убрать строки в которых не одно ключевое
>слово, а несколько?
>Чтоб было понятней: нужно безболезненно из access.log убрать строки в которых определенный
>ip адресс ломится на определенные сайты. Все остальные надписи с этим
>айпишником должны остаться, все остальные (те же) сайты (на других айпишниках)
>должны остаться.
>спасибо.

# cat access.log | grep -v ^'условие' > test.log

примерно так

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Редактирование большого файла"  +/
Сообщение от 2look (ok) on 14-Июл-09, 18:00 
>[оверквотинг удален]
>>слово, а несколько?
>>Чтоб было понятней: нужно безболезненно из access.log убрать строки в которых определенный
>>ip адресс ломится на определенные сайты. Все остальные надписи с этим
>>айпишником должны остаться, все остальные (те же) сайты (на других айпишниках)
>>должны остаться.
>>спасибо.
>
># cat access.log | grep -v ^'условие' > test.log
>
>примерно так

про 'условие' я и спрашивал. спасибо )


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Редактирование большого файла"  +/
Сообщение от сабакка on 14-Июл-09, 20:46 
grep "cron.*sa2" /var/log/messages
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Редактирован"  +/
Сообщение от Andrey Mitrofanov on 14-Июл-09, 17:40 
grep -v "слово.+втрое"

В задаче с логами порядок слов известен и более вычурные варианты излишни. Ну, разве что -

awk '!($3=="слово"&&$7~/второе/)'
или
awk '!($3=="слово"&&index($7,"второе")>0)'

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Редактирован"  +/
Сообщение от 2look (ok) on 14-Июл-09, 18:31 
>grep -v "слово.+втрое"

не понял, сорри..
В строке файла есть айпишник 10.10.10.10, в той же строке есть слово slovonanana.ru
Именно эти строки мне и надо убрать. Как объяснить grep-у что меня интересуют строки в котором есть и одно слово и другое?
Я само правило не могу догнать...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Редактирован"  +/
Сообщение от angra (ok) on 14-Июл-09, 19:14 
Тут возникнет обычная проблема с версиями grep/awk/sed/итд.
Как ленивый человек я решаю ее при помощи perl, так как он везде един.
perl -ne 'print unless /10\.10\.10\.10.*slovonanana\.ru/' путь_к_файлу
или если порядок неизвестен
perl -ne 'print unless /10\.10\.10\.10/ and /slovonanana\.ru/' путь_к_файлу
При желании можно добавить ключик -i, только сначала прочитать про него в man perlrun
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Редактирован"  +/
Сообщение от 2look (ok) on 15-Июл-09, 09:43 
>Тут возникнет обычная проблема с версиями grep/awk/sed/итд.
>Как ленивый человек я решаю ее при помощи perl, так как он
>везде един.
>perl -ne 'print unless /10\.10\.10\.10.*slovonanana\.ru/' путь_к_файлу
>или если порядок неизвестен
>perl -ne 'print unless /10\.10\.10\.10/ and /slovonanana\.ru/' путь_к_файлу
>При желании можно добавить ключик -i, только сначала прочитать про него в
>man perlrun

Спасибо! перл так перл.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Редактирован"  +/
Сообщение от Andrey Mitrofanov on 15-Июл-09, 09:58 
>Я само правило не могу догнать...

"Надо же себя заставлять."/анекдот

http:/man.shtml?topic=grep&category=1
http:/man.shtml?topic=regex&category=7&russian=0

...хотел было в хендбук послать, да там греп используется без объяснений: пранк сорвался.

http://google.ru/search?q=%22%D1%80%D0&#...
и гугль не очень помогает (ссылки про PHP скорее помешают?).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Редактирование большого файла"  +/
Сообщение от 2look (ok) on 15-Июл-09, 15:03 
Господа, спасибо за помощь в изменение файла. Теперь проблема в том что сквид в новый файл access.log ничего не пишет. Не принял он его. Как уговорить?
предполагал что проблема в принадлежности к группе или владельца. сейчас так:
-rw-r--r--  1 nobody  nogroup ... access.log - или проблема не в этом?


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Редактирование большого файла"  +/
Сообщение от 2look (ok) on 15-Июл-09, 16:01 
>Господа, спасибо за помощь в изменение файла. Теперь проблема в том что
>сквид в новый файл access.log ничего не пишет. Не принял он
>его. Как уговорить?
>предполагал что проблема в принадлежности к группе или владельца. сейчас так:
>-rw-r--r--  1 nobody  nogroup ... access.log - или проблема не
>в этом?

Разобрался. Спасибо.
Перезапустил сквид и все стало хорошо.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру