LINUX.ORG.RU
ФорумAdmin

Скрипт к логам веб-сервера


0

1

Добрый день,коллеги. Имеется скрипт,который выводит 4 поля:колл-во запросов,IP ,дату,get-запрос. Я его использую для подсчета колличества запросов на веб-сервер.

myvar=$(awk '{print $1,$4,$}' /var/log/nginx/access.log|egrep -w '/.{1,8}$|/{1}$'|sort -k 2|uniq -w 15 -c);

Вывод идет в строку: 1 137.189.52.234 [28/Sep/2014:04:56:53 / 1 66.249.69.211 [28/Sep/2014:05:41:38 /?cgi=asdd 2 66.249.69.179 [28/Sep/2014:06:42:57 /?c=34634

При исполнении команды с консоли вывод фигурирует в читабельный столбик: 1 137.189.52.234 [28/Sep/2014:04:56:53 /; 1 66.249.69.211 [28/Sep/2014:05:41:38 /cgi=asdd; 2 66.249.69.179 [28/Sep/2014:06:42:57 /?c=34634;

Вопрос: Как при помощи sed, стороных утилит или команд сделать читабельный вывод (в столбик). Можно ли sedом после 3 пробела вставить новую строку что бы получить человеческий вывод работы скрипта?


Ну и зачем так мучиться? Скрипт на питоне пишется за минут 40, питон учится по dive into python или http://learnxinyminutes.com/ за 3-4 дня, для решения задач твоего уровня. Сейчас питон - везде стоит по дефолту...

menangen ★★★★★ ()
Ответ на: комментарий от menangen

Это все конечно хорошо, но необходимо это реализовать на баше. Помоги с человеческим выводом скрипта.

chq ()
Ответ на: комментарий от Komintern

Не знаю как кому ,но я привык работать само написанными скриптами. Которые можно гибко модифицировать под свои нужны,которые ты знаешь как он работает от А до Я. А всякие awstatы и server-status и т.д. не юзаю

chq ()
Ответ на: комментарий от chq

Объясни, пожалуйста, почему выбор пал только на баш? Сложно создать скрипт на питоне, который так же работает как и баш(#!python в начале заголовка файла на питоне и chmod x script)? И в плюс питона - он быстрее работает скрипта на баше.

menangen ★★★★★ ()
Ответ на: комментарий от chq

1) В GNU-версии sed можно в подстановочной части команды 's' использовать '\n' для подстановки символа конца строки.
2) read A B C D ; echo A B C ; echo D
3) если уж всё равно не гнушаешься awk, всё можно сделать в нём.

ABW ★★★★★ ()
Ответ на: комментарий от menangen

да все просто,я не знаю этого языка. Когда выучу ,буду использовать его,а пока ограничиваюсь башем.

chq ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.