Ich versuche diese Zeile mit vsftpd zu parsen:
Sun Apr 7 07:23:33 2013 [pid 23590] [cam02430] OK UPLOAD: Client "206.132.183.209", "/20130407/07/20130407_072324D.avi", 496846 bytes, 383.38Kbyte/sec
mit:
cut -d" " -f9 | sed 's/\[\(.*\)\]/\1/'
Dadurch wird der Benutzername erfolgreich analysiert. Dies ist: cam02430
Aber jetzt hat sich das Datum geändert:
Wed Apr 10 10:37:50 2013 [pid 26137] [cam02299] OK UPLOAD: Client "206.132.183.201", "/20130410/10/20130410_103802D.avi", 496838 bytes, 363.67Kbyte/sec
Um dies zu analysieren, muss ich Folgendes verwenden:
cut -d" " -f8 | sed 's/\[\(.*\)\]/\1/'
Gibt es eine bessere Möglichkeit, den Benutzernamen in einer Zeile zu analysieren? Ich möchte mich an ein Shell-Skript halten.
quelle