Nowe posty

xx Różnice w wydajności :) (0)
Wczoraj o 21:20:21
xx Problem z pulpitem w XFCE (1)
Wczoraj o 10:43:16
xx Problemy z instalacją ustawień jądra (1)
2024-02-26, 14:01:41
xx System 5.1 jak podłączyć i skonfigurować? (3)
2024-02-23, 22:32:16
xx Alternatywa dla Hamachi pod Raspberry Pi? (1)
2024-02-22, 13:51:32
xx Everspace (7)
2024-02-21, 21:33:19
xx [C] Uruchamianie zewnętrznych programów (14)
2024-02-11, 19:20:33
xx libfuse i wielowątkowość (5)
2024-02-11, 13:37:22
xx [libfuse3] Kolejkowanie tworzenia plików dla tego samego katalogu (0)
2024-02-11, 13:31:51

Autor Wątek: Wyciągnięcie danych z logów  (Przeczytany 1422 razy)

Offline

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 38
    • Zobacz profil
Wyciągnięcie danych z logów
« dnia: 2020-01-13, 09:52:43 »
Witam,
chciałbym wyciągnąć z loga tą co mnie interesuje, ale nie wiem, jak to do końca zrobić...
Mam coś takiego:

Jan 13 09:43:22 mail postfix/smtp[14257]: 0553B10185F: to=<zzz.yyy@tioi.com.pl>, relay=mail.tioi.com.pl[91.245.28.22]:25, delay=53, delays=0.04/0/0.14/53, dsn=2.0.0, status=sent (250 OK id=1iqvJi-0005Bc-LM)

A interesuje mnie taki efekt:
<zzz.yyy@tioi.com.pl> status=sent (250 OK id=1iqvJi-0005Bc-LM)

Znalazłęm coś takiego, ale nie wie, jak dodać drugą cześć...
tail -f /var/log/mail.info | grep to= | awk '{print $7}'
to=<zzz.yyy@tioi.com.pl>

Z góry dzięki za pomoc. :)

beaker

  • Gość
Odp: Wyciągnięcie danych z logów
« Odpowiedź #1 dnia: 2020-01-13, 10:01:54 »
awk '{print $7, $12}'

Offline

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 38
    • Zobacz profil
Odp: Wyciągnięcie danych z logów
« Odpowiedź #2 dnia: 2020-01-13, 10:49:34 »
Super jest już prawie extra. Działa fajnie, ale jak zrobić, aby tylko były te 2 rzeczy ?
Czyli to=<ccc@yyy.pl>, status=sent


to=<ccc@yyy.pl>, status=sent
removed
sender
from=<>,
removed
from

beaker

  • Gość
Odp: Wyciągnięcie danych z logów
« Odpowiedź #3 dnia: 2020-01-13, 11:13:20 »
Powinieneś mieć już tylko te dwie rzeczy.
Pokaż kształt obecnej komendy, przykładową linijkę i wynik operacji na tej linijce.

Szklana kula podpowiada jeszcze użycie kolejnego grep aby łapać tylko linijki z status=sent, przykładowo grep to= | grep =sent
« Ostatnia zmiana: 2020-01-13, 11:29:39 wysłana przez arecki »

Offline

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 38
    • Zobacz profil
Odp: Wyciągnięcie danych z logów
« Odpowiedź #4 dnia: 2020-01-13, 11:21:26 »
root@mail:~# cat /var/log/mail.info | grep to= | awk '{print $7,$13}' | head -n 5
reject: <spameri@tiscali.it>:
reject: <spameri@tiscali.it>:
to=<xxx@bbb.pl>, status=sent
reject: <spameri@tiscali.it>:
to=<xxx@bbb.pl>, status=sent

root@mail:~# cat /var/log/mail.info | awk '{print $7,$14}' | head -n 5
from
connection
from
max Jan
max Jan

Logi, które lecą mają nie raz inne linijki, ale słowa kluczowe są te same.

beaker

  • Gość
Odp: Wyciągnięcie danych z logów
« Odpowiedź #5 dnia: 2020-01-13, 11:28:38 »
Użyj kolejnego grep jak podałem w przykładzie.