vbd
27-03-2007, 16:27
Hi,
habe bisher mit awk keine richtige Erfahrung. Möchte mit awk
folgendes machen:
- in einer Datei nach start_pattern suchen
- wenn das Muster gefunden wurde aus der nächsten Zeile die ersten 8
Zeichen ermitteln
- diese Zeichenkette allen nachfolgenden Zeilen voranstellen
- bis in der Zeile end_pattern gefunden wird
- dieses Vorgehen kann in einer Datei ca. 4000 mal vorkommen
- das Ergebnis soll in eine neue Datei geschrieben werden (will ich
mittels Umleitung machen gawk -fscript.awk ausgangsbasis.txt >
ergebnis.txt)
bisher habe ich folgendes zusammengestöpselt:
BEGIN{
start_pattern = "Material-Nummer"
end_pattern = "Summe von"
}
$1==start_pattern {
# nächste Zeile
substr ($1,1,8)
#.... hier fehlt noch einiges
}
Problem wie ermittle ich die ersten 8 Zeichen der nächsten Zeile
wenn in der aktuellen Zeile start_pattern gefunden wurde?
Gibt es für solche Fälle Codebeispiele etc. bzw. wo finde ich eine
vernünftige Anleitung zu awk.
Tipps, Hinweise etc. werden dankbar aufgenommen :)
habe bisher mit awk keine richtige Erfahrung. Möchte mit awk
folgendes machen:
- in einer Datei nach start_pattern suchen
- wenn das Muster gefunden wurde aus der nächsten Zeile die ersten 8
Zeichen ermitteln
- diese Zeichenkette allen nachfolgenden Zeilen voranstellen
- bis in der Zeile end_pattern gefunden wird
- dieses Vorgehen kann in einer Datei ca. 4000 mal vorkommen
- das Ergebnis soll in eine neue Datei geschrieben werden (will ich
mittels Umleitung machen gawk -fscript.awk ausgangsbasis.txt >
ergebnis.txt)
bisher habe ich folgendes zusammengestöpselt:
BEGIN{
start_pattern = "Material-Nummer"
end_pattern = "Summe von"
}
$1==start_pattern {
# nächste Zeile
substr ($1,1,8)
#.... hier fehlt noch einiges
}
Problem wie ermittle ich die ersten 8 Zeichen der nächsten Zeile
wenn in der aktuellen Zeile start_pattern gefunden wurde?
Gibt es für solche Fälle Codebeispiele etc. bzw. wo finde ich eine
vernünftige Anleitung zu awk.
Tipps, Hinweise etc. werden dankbar aufgenommen :)