Здравствуйте уважаемые разработчики. Очень нуждаюсь в вашей помощи.
Нужен скрипт написанный на Shell, который бы выводил кол-во неуспешных запросов GET за заданный час.
Вот например нашла такой лог за 21 февраля
127.0.0.1 - - [21/Feb/2009:12:26:23 +0300] "GET /www/%D0%93%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F.php HTTP/1.1" 404 2008 127.0.0.1 - - [21/Feb/2009:12:26:33 +0300] "GET /%D0%93%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F.php HTTP/1.1" 200 482 127.0.0.1 - - [21/Feb/2009:12:26:33 +0300] "GET /denwer/errors/phperror_js.php HTTP/1.1" 200 3122 127.0.0.1 - - [21/Feb/2009:15:21:16 +0300] "GET /denwer HTTP/1.1" 404 1972 127.0.0.1 - - [21/Feb/2009:15:21:52 +0300] "GET /denwer HTTP/1.1" 404 1972 127.0.0.1 - - [21/Feb/2009:15:22:59 +0300] "GET /denwer/i/hosting-jino.gif HTTP/1.1" 200 1017 127.0.0.1 - - [21/Feb/2009:15:22:58 +0300] "GET /denwer/ HTTP/1.1" 200 18258 127.0.0.1 - - [21/Feb/2009:15:22:59 +0300] "GET /denwer/Tools/dnsearch/search.pl?action=js HTTP/1.1" 200 1521 127.0.0.1 - - [21/Feb/2009:15:22:59 +0300] "GET /favicon.ico HTTP/1.1" 200 318 127.0.0.1 - - [21/Feb/2009:15:23:03 +0300] "GET /denwer HTTP/1.1" 404 1972 127.0.0.1 - - [21/Feb/2009:15:27:51 +0300] "GET / HTTP/1.1" 200 3232 127.0.0.1 - - [21/Feb/2009:15:27:51 +0300] "GET /icons/blank.gif HTTP/1.1" 200 148 127.0.0.1 - - [21/Feb/2009:15:27:51 +0300] "GET /icons/folder.gif HTTP/1.1" 200 225 127.0.0.1 - - [21/Feb/2009:15:27:51 +0300] "GET /icons/text.gif HTTP/1.1" 200 229 127.0.0.1 - - [21/Feb/2009:15:27:51 +0300] "GET /icons/unknown.gif HTTP/1.1" 200 245 127.0.0.1 - - [21/Feb/2009:15:28:12 +0300] "GET /%d0%91%d0%b8%d0%b1%d0%bb%d0%b8%d0%be%d1%82%d0%b5%d0%ba%d0%b0.php HTTP/1.1" 200 484 127.0.0.1 - - [21/Feb/2009:15:28:12 +0300] "GET /denwer/errors/phperror_js.php HTTP/1.1" 200 3122 127.0.0.1 - - [21/Feb/2009:15:28:12 +0300] "GET /denwer/errors/phperror_js.php HTTP/1.1" 200 3122 127.0.0.1 - - [21/Feb/2009:15:28:34 +0300] "GET / HTTP/1.1" 200 172 127.0.0.1 - - [21/Feb/2009:15:33:17 +0300] "GET /%D0%93%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F.php HTTP/1.1" 200 478 127.0.0.1 - - [21/Feb/2009:15:33:44 +0300] "GET /%d0%98%d0%b7%d0%be%d0%b1%d1%80%d0%b0%d0%b6%d0%b5%d0%bd%d0%b8%d1%8f/ HTTP/1.1" 200 1700 127.0.0.1 - - [21/Feb/2009:15:33:44 +0300] "GET /icons/back.gif HTTP/1.1" 200 216 127.0.0.1 - - [21/Feb/2009:15:33:44 +0300] "GET /icons/image2.gif HTTP/1.1" 200 309 127.0.0.1 - - [21/Feb/2009:15:36:48 +0300] "GET /%d0%93%d0%bb%d0%b0%d0%b2%d0%bd%d0%b0%d1%8f.php HTTP/1.1" 200 478 127.0.0.1 - - [21/Feb/2009:15:36:48 +0300] "GET /denwer/errors/phperror_js.php HTTP/1.1" 200 3122 127.0.0.1 - - [21/Feb/2009:15:36:48 +0300] "GET /denwer/errors/phperror_js.php HTTP/1.1" 200 3122 127.0.0.1 - - [21/Feb/2009:15:36:51 +0300] "GET /Registration.txt HTTP/1.1" 200 - 127.0.0.1 - - [21/Feb/2009:15:36:55 +0300] "GET /%d0%a0%d0%b5%d0%b3%d0%b8%d1%81%d1%82%d1%80%d0%b0%d1%86%d0%b8%d1%8f.php HTTP/1.1" 200 486 127.0.0.1 - - [21/Feb/2009:15:36:55 +0300] "GET /denwer/errors/phperror_js.php HTTP/1.1" 200 3122 127.0.0.1 - - [21/Feb/2009:15:36:55 +0300] "GET /denwer/errors/phperror_js.php HTTP/1.1" 200 3122 127.0.0.1 - - [21/Feb/2009:15:37:24 +0300] "GET / HTTP/1.1" 200 148 127.0.0.1 - - [21/Feb/2009:15:37:24 +0300] "GET /denwer/i/hosting-jino.gif HTTP/1.1" 304 - 127.0.0.1 - - [21/Feb/2009:15:37:24 +0300] "GET /denwer/ HTTP/1.1" 200 18258 127.0.0.1 - - [21/Feb/2009:15:37:24 +0300] "GET /denwer/Tools/dnsearch/search.pl?action=js HTTP/1.1" 200 1521 127.0.0.1 - - [21/Feb/2009:15:39:00 +0300] "GET /cgi/ HTTP/1.1" 403 2751 127.0.0.1 - - [21/Feb/2009:15:40:09 +0300] "GET /cgi/ HTTP/1.1" 403 2751 127.0.0.1 - - [21/Feb/2009:15:42:29 +0300] "GET /cgi/ HTTP/1.1" 403 2751 127.0.0.1 - - [21/Feb/2009:15:42:49 +0300] "GET /cgi/test HTTP/1.1" 404 1972
Подойдёт ли он?
И так же, в скрипте имя файла лога должно задаваться первым аргументом командной строки а час вторым аргументом. Если скрипт запущен без аргументов, он должен выводить свой синтаксис Если задан невалидный час, скрипт должен ругаться на это и выводить синтаксис. Если не удаётся открыть лог, скрипт должен сообщать об ошибке.
Вот собственно надо реализовать.