C
Cassiopeia
hallo shell-script freunde
ich habe folgendes Problem, an dem ich schon seit Stunden hocke.
ich möchte eine Datei zeilenweise auslesen und in jeder Datei ein XML Tag der Form <xxx> durch ein HTML Tag ersetzen. Das Problem: Die Ersetzung soll dynamisch mit einer Funktion berechnet werden die als Übergabeparameter das XML-Tag enthält.
mit \1 kann ich ja auf gefunde Teilausdrücke zurgeifen, aber ich müsste auf diesen Teilausdruck auch außerhalb des SED-Kommandos zugreifen können.
also etwas in der Art:
Aber das \1 ist steht in den Ausführungszeichen `` nicht mehr zur Verfügung...
Wie kann ich also \1 global speichern oder eine Funktion in SED einbetten und auf \1 zugreifen??
Wenn jemand ne Idee hat, oder mir wenigstens sagt, dass das unmöglich ist, dann würde mich freuen.
Vielen Dank im Voraus
ich habe folgendes Problem, an dem ich schon seit Stunden hocke.
ich möchte eine Datei zeilenweise auslesen und in jeder Datei ein XML Tag der Form <xxx> durch ein HTML Tag ersetzen. Das Problem: Die Ersetzung soll dynamisch mit einer Funktion berechnet werden die als Übergabeparameter das XML-Tag enthält.
mit \1 kann ich ja auf gefunde Teilausdrücke zurgeifen, aber ich müsste auf diesen Teilausdruck auch außerhalb des SED-Kommandos zugreifen können.
also etwas in der Art:
Code:
grep ".*" "./$dataxml" | sed "s/<\([^<>]*\)>/ `FUNKTION \1` /g"
Aber das \1 ist steht in den Ausführungszeichen `` nicht mehr zur Verfügung...
Wie kann ich also \1 global speichern oder eine Funktion in SED einbetten und auf \1 zugreifen??
Wenn jemand ne Idee hat, oder mir wenigstens sagt, dass das unmöglich ist, dann würde mich freuen.
Vielen Dank im Voraus
Zuletzt bearbeitet von einem Moderator: