PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mit awk datei zeilenweise zerlegen?



meinereinerseiner
04-02-2003, 18:03
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:


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

anda_skoa
04-02-2003, 19:25
ich denke awk arbeitet ohnehin zeilenbasiert.

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

Ciao,
_

Jasper
05-02-2003, 09:15
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:


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