Anzeige:
Ergebnis 1 bis 3 von 3

Thema: mit awk datei zeilenweise zerlegen?

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.01.2001
    Beiträge
    242

    Question mit awk datei zeilenweise zerlegen?

    hallo,

    wie kann ich mit awk eine datei zeile für zeile zerlegen und die einzelnen felder
    in variablen schreiben?

    Datei:
    feld1 feld2 feld3 feld4
    feld1 feld2 feld3 feld4
    feld1 feld2 feld3 feld4
    feld1 feld2 feld3 feld4

    so funktioniert das irgendwie nicht:
    Code:
    DAT=`cat Datei`
    
    for i in $DAT; do
    
     echo $i | awk '{ print $1 }'
     echo $i | awk '{ print $2 }'
     echo $i | awk '{ print $3 }'
     
     echo "$1 $2 $3"
     
    done

    DANKE
    der tom

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    ich denke awk arbeitet ohnehin zeilenbasiert.

    probier mal
    #> cat datei | awk '{ print $1 $2 $3 }'

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer
    Registriert seit
    26.12.2002
    Ort
    Matrix
    Beiträge
    194

    Re: mit awk datei zeilenweise zerlegen?

    Original geschrieben von meinereinerseiner

    wie kann ich mit awk eine datei zeile für zeile zerlegen und die einzelnen felder
    in variablen schreiben?

    Datei:
    feld1 feld2 feld3 feld4
    feld1 feld2 feld3 feld4
    feld1 feld2 feld3 feld4
    feld1 feld2 feld3 feld4

    so funktioniert das irgendwie nicht:
    Code:
    DAT=`cat Datei`
    
    for i in $DAT; do
    
     echo $i | awk '{ print $1 }'
     echo $i | awk '{ print $2 }'
     echo $i | awk '{ print $3 }'
     
     echo "$1 $2 $3"
     
    done
    dafür brauchts kein awk:

    #!/bin/sh
    cat Datei | while read var1 var2 var3 var4; do
    echo $var1
    echo $var2
    echo $var3
    echo $var4
    done

    -j

Lesezeichen

Berechtigungen

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