linux-l: tip zur textmanipulation

Jens Dreger jens.dreger at physik.fu-berlin.de
Do Feb 8 22:25:00 CET 2001


On Thu, Feb 08, 2001 at 10:00:13PM +0100, Lutz Pflughaupt wrote:
> Hallo Linux User,
> mal wieder ´ne Frage eines Einzelkämpfers.
> Ich möchte eine vorhandene Datei in Spalten formatieren, um dann mittels
> awk bestimmte Spalten auszuwerten. Die vorhanden Datei hat keine
> Leerzeichen mehr. Mit welchem Befehl kann ich in jeder Zeile an immer
> den selben Stellen jeweils ein Leerzeichen einfügen ?

Ich sach mal ganz schnell:

    dreger at smart:~> echo aasdasdasdasdasdasdasdasd| perl -lpe '$_=join(" ",/^(.{2})(.{4})(.{5})(.*)$/)'
    aa sdas dasda sdasdasdasdasd

Jedoch: wenn in einer Zeile weniger als 2+4+5 Zeichen stehen, dann
geht das erstmal schief, weil der Patter nnicht matched. Aber
vielleicht reicht das ja erstmal.

Inner bash geht auch schon mal:

    paste -d" " <(cut -b 1-4 lines.txt) <(cut -b 5-9 lines.txt)

Wird halt unuebersichtlich, wenn Du viele Felder hast. Geht alles
bestimmt auch einfacher...

Gruss,

Jens.



Mehr Informationen über die Mailingliste linux-l