| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Системное программирование > Дублирование элементов массива |
| Автор: DiverD 19.1.2006, 03:57 | ||
Вот код
#Вот результат выполнения: access.log: 127.0.0.1 - - [19/Jan/2006:02:47:10 +0200] "GET /shel.php?cmd=netstat HTTP/1.1" 200 3799 "http://127.0.0.1/shel.php?cmd=ps+ax" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:10 +0200] "GET /shel.php?cmd=netstat HTTP/1.1" 200 3799 "http://127.0.0.1/shel.php?cmd=ps+ax" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:12 +0200] "GET /shel.php?cmd=id HTTP/1.1" 200 248 "http://127.0.0.1/shel.php?cmd=netstat" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:10 +0200] "GET /shel.php?cmd=netstat HTTP/1.1" 200 3799 "http://127.0.0.1/shel.php?cmd=ps+ax" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:12 +0200] "GET /shel.php?cmd=id HTTP/1.1" 200 248 "http://127.0.0.1/shel.php?cmd=netstat" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:10 +0200] "GET /shel.php?cmd=netstat HTTP/1.1" 200 3799 "http://127.0.0.1/shel.php?cmd=ps+ax" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:12 +0200] "GET /shel.php?cmd=id HTTP/1.1" 200 248 "http://127.0.0.1/shel.php?cmd=netstat" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" #Вот результат логов apache httpd-access.log: 127.0.0.1 - - [19/Jan/2006:02:47:06 +0200] "GET /shel.php?cmd=ps+ax HTTP/1.1" 200 4979 "http://127.0.0.1/shel.php?cmd=ps" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:10 +0200] "GET /shel.php?cmd=netstat HTTP/1.1" 200 3799 "http://127.0.0.1/shel.php?cmd=ps+ax" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:12 +0200] "GET /shel.php?cmd=id HTTP/1.1" 200 248 "http://127.0.0.1/shel.php?cmd=netstat" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:15 +0200] "GET /shel.php?cmd=who HTTP/1.1" 200 433 "http://127.0.0.1/shel.php?cmd=id" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" 127.0.0.1 - - [19/Jan/2006:02:47:20 +0200] "GET /shel.php?cmd=man+man HTTP/1.1" 200 6402 "http://127.0.0.1/shel.php?cmd=who" "Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.7.7) Gecko/20050420" [/code] Как видно мой логфайл access.log дублирует в отличии от apache. где моя ошибка? PS: скрипт по задумке должен записывать толька те строки и в оригинале в которых присуцтвует "netstat" |
| Автор: saint 19.1.2006, 16:25 | ||||
| строка 25: push @new_acc, $_ if /netstat/g; попробуй убрать "g" в конце регекспа:
а вообще строку можно сократить до:
|
| Автор: DiverD 19.1.2006, 19:48 |
| пофигу с глобалам или без - серавно не работает |
| Автор: DiverD 19.1.2006, 21:29 |
| ВСЕ проблема решена. ps: вас пока дождешься |
| Автор: BlackLFL 20.1.2006, 10:14 |
| так напишете, как решили проблему ... |
| Автор: DiverD 20.1.2006, 14:23 |
| BlackLFL колупался 2 часа все думал думал но ни делал Кстати если есть идеи прошу высказать.. |