Hallo, Am Mittwoch, 14. Mai 2008 14:42:13 schrieb Andre Tann:
wenn ich ein Logfile mitlesen will und folgendes eingebe:
tail -f $LOGFILE | awk -F' ' '{ print $1,$7 }'
Dann sehe ich schon fortlaufend Feld 1 und 7 des Logfiles. Gebe ich aber ein:
tail -f $LOGFILE | cut -d ' ' -f 1,7
Dann sehe ich lange Zeit nichts, und dann sämtliche aufgelaufenen Zeilen auf einmal. Warum?
(wenn ich mich recht entsinne): Die Felder werden bei cut durch __ein__ Leerzeichen (-d " ") getrennt. Stehen mehrere Leerzeichen hintereinander, oder gar ein TAB, dann gibt's Probleme. AWK macht das anders: As each input record is read, gawk splits the record into fields, using the value of the FS variable as the field separator. ..... FS is expected to be a full regular expression. In the special case that FS is a single space, fields are separated by runs of spaces and/or tabs and/or newlines. Im Defaultfall werden mehrere Leerzeichen, Tabs etc. als Feldtrenner zusammengefasst. Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer