key=value verarbeiten & value addieren

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von knausser, 04.04.2008.

  1. #1 knausser, 04.04.2008
    knausser

    knausser Grünschnabel

    Dabei seit:
    31.05.2006
    Beiträge:
    6
    Zustimmungen:
    0
    Ort:
    munich - down town
    Hallo,

    ich wäre sehr dankbar, wenn mir jemand von Euch einen kleinen Denkanstoß geben könnte, wie ich ich folgende Aufgabe lösen könnte.:think:

    Ich habe in einer Datei folgende beispielhaften Eintrag:
    Code:
    key=abraham,josef,simon,josef,elias,abraham,josef,abraham,abraham,josef,simon,simon,abraham,
    ich möchte nun die values (alles rechts vom "=" Gleichheitszeichen) zusammenaddiert ausgeben. Also ungefähr so:
    Code:
    5 x abraham
    3 x simon
    4 x josef
    1 x elias
    
    Ist mit Sicherheit keine schwere Aufgabe.
    Ich tippe mal auf awk zum addieren der einzelnen values - die müssten dann aber untereinander in einer Datei stehen, oder geht das anders?
    Wie trenne ich aber den key von den values und wie dann die einzelnen values durch das "," (Komma) voneinander?
    Da stell' ich mich noch etwas zu doof an und hab keine Idee ...

    vorab vielen Dank für's "augen-öffnen"
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 flappinski, 04.04.2008
    flappinski

    flappinski Foren As

    Dabei seit:
    31.03.2006
    Beiträge:
    87
    Zustimmungen:
    0
    hi knausser:
    cut -f2 -d= | tr "," "\n" | sort | uniq -c

    also gesamt:
    echo key=abraham,josef,simon,josef,elias,abraham,josef,abraham,abraham,josef,simon,simon,abraham, | cut -f2 -d= | tr "," "\n" | sort | uniq -c
    1
    5 abraham
    1 elias
    4 josef
    3 simon



    LG,
    Stephan
     
  4. #3 Gott_in_schwarz, 04.04.2008
    Gott_in_schwarz

    Gott_in_schwarz ar0

    Dabei seit:
    22.04.2007
    Beiträge:
    546
    Zustimmungen:
    0
    Ort:
    Niedersachsen
    Unnötigerweise hier mal eine Lösung in perl:
    Code:
    echo "key=abraham,josef,simon,josef,elias,abraham,josef,abraham,abraham,josef,simon,simon,abraham"|\
    perl -ne 'chomp; map{$foo{$_}++} split(/,/, (split(/=/))[1]); for(keys(%foo)){print "$foo{$_}\t$_\n"}'
    4       josef
    5       abraham
    1       elias
    3       simon
    Aber mit den shell-tools ist es wesentlich transparenter und auch mehr Ontopic, *hüstl*..
     
Thema:

key=value verarbeiten & value addieren

Die Seite wird geladen...

key=value verarbeiten & value addieren - Ähnliche Themen

  1. Log Auslesen und die darin gennnten Dateien verarbeiten

    Log Auslesen und die darin gennnten Dateien verarbeiten: Hallo, ich suche eine Möglichkeit via sed eine Steamupdate Log aus zu werten und zu verarbeiten ---------- Checking bootstrapper version...
  2. find weiterverarbeiten

    find weiterverarbeiten: Ola zusammen :) hoffe euch gehts gut?! ich habe hier ein kleines Gedankenproblem .. undzwar will ich alle Files eines bestimmten Dateityps...
  3. USB-Input verarbeiten

    USB-Input verarbeiten: Hallo Leute, ich suche ein Modul um eine USB-Input zu verarbeiten. Ich will über USB Datenpakete senden, diese dann in analoge Signale...
  4. Datensatz "online" verarbeiten

    Datensatz "online" verarbeiten: Hallo Ich möchte Datensätze eines Textfiles welches über HyperTerminal und Com Port gefüllt wird online verarbeiten. Das soll heißen wenn ein...
  5. Wie den Inhalt weiter verarbeiten ?

    Wie den Inhalt weiter verarbeiten ?: Ich habe bereits aus einer Log Datei mit cat filename | cut -d " " -f 6 ein "OK" gefiltert. Nun möchte ich gerne mit diesem "OK" weiter arbeiten....