> ich habe den Eindruck, dass meine Mails nicht in der Liste ankommen, 
> deshalb forwarde ich sie ausnahmsweise mal.
Meine auch nicht; habe auf den ersten Versuch, meine Anfrage zu verschicken,
sogar eine Antwort von meinem Mailer-Daemon (den ich im ersten Moment für
eine Swen-Mail hielt) gekriegt:
----- Transcript of session follows -----
... while talking to murphy.debian.org.:
>>> RCPT To:<[EMAIL PROTECTED]>
<<< 550 <[EMAIL PROTECTED]>: User unknown
550 <[EMAIL PROTECTED]>... User unknown
--
Der 2. Anlauf klappte dann.
--
> Ein paar Beispielzeilen wären sehr hilfreich gewesen.
Allerdings, sorry. Hab ein paar angehängt. Du hast das das aber ganz richtig
erschlossen.
Leider kriege ich widersprüchliche Fehlermeldungen:
gawk: awk.txt:4:      session=20001 visitor=10001
gawk: awk.txt:4:                           ^ syntax error
Häh? Ich rufe über gawk -f auf, hab das Script im Beispiellog nochmal unten
drangehängt. Vielleicht kannst du mal gucken, ob es bei dir läuft, ich habe
hier auf Arbeit UnixUtils for Win32 und kriege öfters Fehlermeldungen von
Scripts, die zu Hause laufen, dass ich nicht weiß, ob ich denen trauen soll.
Also vielen Dank erstmal und Gruß
Gebhard

-----Original Message-----
From: Jan Trippler [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, September 30, 2003 9:23 PM
To: Gebhard Dettmar
Subject: Fwd: Re: awk script zum inkrementieren
Importance: High

Hallo Gebhard,

ich habe den Eindruck, dass meine Mails nicht in der Liste ankommen, 
deshalb forwarde ich sie ausnahmsweise mal.

Gruß
Jan

----------  Weitergeleitete Nachricht  ----------

Subject: Re: awk script zum inkrementieren
Date: Tue, 30 Sep 2003 20:31:36 +0200
From: Jan Trippler <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]

Am Dienstag, 30. September 2003 16:09 schrieb Gebhard Dettmar:
[...]

> -> $1 wird zu $2, $1 ist nun die Sess.-Nr. Sortiert ist das ganze
> weiterhin
> nach Timestamps. Das habe ich nach Session Nr. sortiert in sort.log
> geschrieben und moechte jetzt ein awk-Script drueberlaufen lassen,
> das ans Zeilenende Session- und VisitorID setzt und in dem Fall, dass
> $1 ungleich $1 aus der vorausgehenden Zeile ist, Session- und
> VisitorID um 1 inkrementiert
> (a la
> '$1 != prev {print $0, $(NF+1)="SessionID=i++"} for i=10001 o.s.„.),
> so dass
> jede Session eine je eigene Session-/VisitorID am Ende hat.

[...]

Ein paar Beispielzeilen wären sehr hilfreich gewesen. Ich denke mal, es
sieht so aus:
Session-ID  IP irgendwas
0815  111.222.000.111 ...
und Du willst es so haben:
Session-ID  IP irgendwas Dein_neues_Ende
0815  111.222.000.111 ... VisitorID=10001; SessionID=20001

und das ganze so, dass ein (mir unbekannter Startwert) der Session- und
Visitor-ID jedesmal inkrementiert wird, wenn sich Spalte 1 ändert.
Korrekt?

Das geht mit awk z. B. so (ungetestet):

awk ' BEGIN { prev = -1; }
      $1 != prev { prev = $1; session ++; visitor ++; }
      { printf "%s VisitorID=%d; SessionID=%d\n", $0,session,visitor;}
    ' session=20001 visitor=10001 sort.log >neues_log

wobei die Werte 20001 und 10001 die Startwerte sind.

Jan

-------------------------------------------------------

Attachment: beispielSessionized.zip
Description: Binary data

Antwort per Email an