Ipaddresse aus apache log extraieren.
Ipaddresse aus apache log extraieren.
Ich möchte eine textdatei haben, mit allen ip's, die ich ge"grap"ed habe.
Was ich schon geschafft habe, ist eine liste in eine textdatei zu schreiben, und die per sort nach ip's sortieren zu lassen.
Jetzt möchte ich aber jede ip einzeln (ohne den rest im log) und zwar ohne duplikate. Die ip steht als erstes im log.
Am ende soll eine textdatei mit nur den ip's sein, wobei jede ip auch nur einmal vorkommen soll. Hat jemand einen tipp für mich ?
Was ich schon geschafft habe, ist eine liste in eine textdatei zu schreiben, und die per sort nach ip's sortieren zu lassen.
Jetzt möchte ich aber jede ip einzeln (ohne den rest im log) und zwar ohne duplikate. Die ip steht als erstes im log.
Am ende soll eine textdatei mit nur den ip's sein, wobei jede ip auch nur einmal vorkommen soll. Hat jemand einen tipp für mich ?
-
Roger Wilco
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: Ipaddresse aus apache log extraieren.
Code: Select all
cut -d ' ' -f1 access_log|sort -u > deine_datei.txt
Last edited by Roger Wilco on 2005-02-17 13:15, edited 1 time in total.
Re: Ipaddresse aus apache log extraieren.
Herrlich ! Danke!Roger Wilco wrote:Im access_log steht dabei die IP-Adresse an 1. Stelle.Code: Select all
cut -d ' ' -f1 access_log|sort -u > deine_datei.txt
Im moment steht alles untereinnander, wie bekomme ich das in eine in einer zeile, mit einem space getrennt?
Sorry, für die doofen fragen ;-)
-
Roger Wilco
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: Ipaddresse aus apache log extraieren.
Code: Select all
cut -d ' ' -f1 access_log|sort -u|awk '{ printf "%s ",$1; }' > deine_datei.txtRe: Ipaddresse aus apache log extraieren.
oder:
ein bischen schneller 
Code: Select all
cut -d ' ' -f1 access_log|sort -u|tr "[:space:]" "[ ]"Re: Ipaddresse aus apache log extraieren.
Shit, ich habe mir jetzt vieles zusammengelesen. Aber wie schaffe ich die daten aus einer externen datei (hier ip-liste) als variable (array) ainzulesen?Roger Wilco wrote:und zusätzlich http://www.tldp.org/LDP/abs/html/ lesen...Code: Select all
cut -d ' ' -f1 access_log|sort -u|awk '{ printf "%s ",$1; }' > deine_datei.txt
-
Roger Wilco
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: Ipaddresse aus apache log extraieren.
Code: Select all
tr "[:space:]" "[ ]" < deine_datei.txtWozu brauchst du die IPs denn in einem Array in der Bash?
Wenn du nur den Inhalt in einer Variablen haben willst:
Code: Select all
VARIABLE=$(cat deine_datei.txt)Re: Ipaddresse aus apache log extraieren.
Ja. Danke das funktioniert. Mitlerweile habe ich die sache im griff ...