Ergebnis 1 bis 3 von 3
  1. #1
    Morgenduft
    Themenstarter

    Registriert
    03.2007
    Beiträge
    164

    awk & arrays: Dateistruktur erstellen

    Hallo,

    folgende Problematik:

    Ich benutze MAC OS X und dort das Terminal, also bash shell:

    Ich lese aus beliebig vielen Dateien die alle WR_Zahl_DA_Zahl heißen die erste Zeile mittels eines awk-Scripts ein.
    Die erste Zeile sieht immer so aus:

    JAHR;MONAT;TAG;Ort1;Ort2;...Ortn;

    Mich interessieren jeweils nur die Orte, also fange ich bei $4 an, nehme das Semikolon als Trenner ( und ende bei $NF-1 wegen dem letzten Semikolon.

    Code:
    /^Jahr/ { for (i = 4; i<=(NF-1) && $i != ""; i++) arr[i-3] = $i
    arr steht dabei für meinen Array, in arr[1]=$4 (=Ort1) usw...

    Erstens verstehe ich nun nicht, warum mir die Ausgabe des Arrays die Orte nicht sortiert zurückgibt

    Code:
    for (zahl in arr)
            printf zahl" "arr[zahl]"\n"
    und zweitens würde ich gerne neue Dateien aus dem Array erzeugen und zwar in der Form (siehe oben)

    WR_Zahl_DA_Zahl_Ort-1
    WR_Zahl_DA_Zahl_Ort-2
    WR_Zahl_DA_Zahl_Ort-3
    WR_Zahl_DA_Zahl_Ort-4
    ...
    WR_Zahl_DA_Zahl_Ort-n

    Ist das möglich?

    Danke
    Micha
    Kind des Netzes.

  2. #2
    Gala Avatar von timbooo
    Registriert
    07.2009
    Ort
    Schwabenland
    Alter
    25
    Beiträge
    49
    > awk -f script.awk dateimitinhalt.txt
    Code:
    {
    cnt = split($NF, a, ";");
    for (i = 1; i < cnt; i++) {
        if(i > 3) {
          file = a[i]
          print " " > file
        }
      }
    }
    Gruß Tim
     MacBook Pro 13" (Juni '09) - 2,26GHz, 4GB RAM, 320GB HDD (7200rpm)
     iPhone 3G S - 16GB

  3. #3
    Morgenduft
    Themenstarter

    Registriert
    03.2007
    Beiträge
    164
    Sehr fein. Werde ich mir alsbald ansehen und die Schleife mal testen! Danke Dir!
    Kind des Netzes.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •