Hallo. Ich habe ein bash Skript, das via Cronjob aus einem DNS log die tägliche aufgerufenen Namen extrahiert. Hier blockiere ich schön fleissig ad-Server. Im Moment muss ich immer manuell zwischen der Blockliste und dem täglichen Log vergleichen. Hat jemand eine Idee wie man einfach und elegant das tägliche Log via | grep oä von einer bestehenden Liste bereinigen kann? Quasi ein diff? Danke Martin
Sortieren und dann einfach diff aufrufen? ;) Mit den richtigen Optionen kann man den Output sicher brauchbar formattieren.
1 | $ cat blocklist |
2 | 123.456.789.23 |
3 | 127.0.0.1 |
4 | 6.6.6.6 |
5 | 111.222.333.444 |
6 | |
7 | $ cat logfile |
8 | connection from 6.6.6.6 |
9 | connection from 123.456.789.23 |
10 | connection from 111.222.333.444 |
11 | connection from 47.11.23.42 |
12 | connection from 127.0.0.1 |
13 | |
14 | $ grep -f blocklist -v < logfile |
15 | connection from 47.11.23.42 |
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.