Skrypt w bash do sortowania logów.
: 22 mar 2011, 15:14
Witam,
Mam pewien problem, a mianowicie potrzebował bym aby ktoś pomógł mi napisać skrypt do sortowania logów.
Logi należy sortować malejąco wg ilości wystąpień konkretnego adresu IP. Kazdy wpis w logu zawiera zdefiniowany adres ip klienta.
Porzadane działanie skryptu:
1. grep -c 192.168.0.1 /plik_log.log
2. zapis do pliku wyj.txt wyniku poprzedniego polecenia w sposób: <adres_ip> || <wynik polecenia z pkt 1>
3.automatycznie zwiększ w pkt.1 adres IP o 1(czyli na 192.168.0.2) i wykonaj polecenie z pkt 1 z nowym IP.
Adresy IP przyjmują wartości od 192.168.0.1 do 192.168.109.33. Powyższe trzy pkt. skryptu powinny się zapętlać aż sprawdza wszystkie IP, czyli jako ostatnie zostanie sprawdzone IP 192.168.109.33 i wynik polecenia zostanie dopisany do pliku textowego.
4. Posortowac plik wyj.txt wg <wynik_polecenia_z_pkt_1> od największej do najmniejszej.
Proszę o pomoc. Programista zemnie beznadziejny, a taki skrypcik straszliwie by mi pomógł.
Z góry dziękuje.
Mam pewien problem, a mianowicie potrzebował bym aby ktoś pomógł mi napisać skrypt do sortowania logów.
Logi należy sortować malejąco wg ilości wystąpień konkretnego adresu IP. Kazdy wpis w logu zawiera zdefiniowany adres ip klienta.
Porzadane działanie skryptu:
1. grep -c 192.168.0.1 /plik_log.log
2. zapis do pliku wyj.txt wyniku poprzedniego polecenia w sposób: <adres_ip> || <wynik polecenia z pkt 1>
3.automatycznie zwiększ w pkt.1 adres IP o 1(czyli na 192.168.0.2) i wykonaj polecenie z pkt 1 z nowym IP.
Adresy IP przyjmują wartości od 192.168.0.1 do 192.168.109.33. Powyższe trzy pkt. skryptu powinny się zapętlać aż sprawdza wszystkie IP, czyli jako ostatnie zostanie sprawdzone IP 192.168.109.33 i wynik polecenia zostanie dopisany do pliku textowego.
4. Posortowac plik wyj.txt wg <wynik_polecenia_z_pkt_1> od największej do najmniejszej.
Proszę o pomoc. Programista zemnie beznadziejny, a taki skrypcik straszliwie by mi pomógł.
Z góry dziękuje.