Komputery, Windows i masa kompletnego bałaganu. Tak, to mój dziennik.

ktos.jogger


Skrypciarsko

27 września 2007, 15:48:29. Kodowanie , 1.

cat /var/log/maillog | grep "connect from" | grep -v "disconnect" | awk '{print $NF}' | sed "s/.*\[//g" | sed "s/\]//" | grep -v "127.0.0.1" | uniq

Nieoptymalnie i brzydko zapewne, ale działa.

Dalej twierdzę, że sh w żadnej kompatybilnej postaci (po prostu składnia kompatybilna z sh jest okropna!) mi nie podchodzi - więc na przykład świetny zsh odpada. Niestety tak samo tcsh mi nie podchodzi.

Jak widac skladnia if ... jest bardzo intuicyjna (przypomina C).

if ( -f /bin/ps ); then /bin/ps;echo -n 'wykonalo sie ps' >/dev/tty8 endif

Jak dla mnie to cholernie niepodobna i wcale nie intuicyjna...

Komentarze

  1. Lukem
    27 września 2007 17:40:31

    Gdzie ja byłem, kiedy rozdawali umiejętności programistyczne? Co prawda programowałem kiedyś w C++, ale za Chiny ludowe nie wiem, co ta pierwsza długa komenda robi. :)

  2. Marcin / Ktos
    27 września 2007 17:48:15

    Ja też bym nie wiedział – wybiera z logów serwera SMTP wszystkie e-maile jakie próbowały się łączyć z wyjątkiem lokalnego. Po prostu.

    Potrzebowałem tego, by potem zablokować na firewallu te wszystkie sieci, notabene należące do jednego operatora, chińskiego.

  3. Uzytkownik
    27 września 2007 23:45:46

    Może coś takiego:
    awk —field-separator ‘[’ ‘/[^s]connect from/{print $NF}’ < /var/log/mail.log | sed ‘s/]//g;’ | sort | uniq

  4. Marcin / Ktos
    28 września 2007 09:37:38

    O, ładne. Niestety awka znam na tyle mało, że sam bym nie zrobił tego zbyt szybko (a i to co napisałem już teraz widzę, że dało by się ‘uładnić’). Dzięki Uzytkownik :-)

Zostaw komentarz

W komentarzach dozwolona jest składnia Markdown do formatowania.