O
ist es möglich und wenn ja wie, mittels sed in einer Datei an eine bestimmte Zeile (Z.B. Suchmuster "AB HIER") eine neue Zeile anzuhängen ? Das Ganze sollte jedoch in einem Skript mittels "sed -e " gemacht werden.
Also wie bspw. beim Suchen und Ersetzen: sed -e s/AB HIER/NICHT HIER/g Nur eben eine Zeile nach "AB HIER" anhängen.
ich weis das es mit sed geht, es ist aber tricky wenn es mit sed über zeilengrenzen geht.
Wenn es also nicht zwingend sed sein muss dann nimm doch einfach das gute alte awk
awk '{print $0}/AB HIER/{print "inhalt der neuen Zeile";}' <eingabefile >ausgabefile
awk macht immer für jede Zeile des eingabefiles das was in den geschweiften klammern steht, steht vor der geschweiften klammer ein suchmuster /suchmuster/ dann führt awk die anweisungen in der Klammer nur dann aus wenn das Suchmuster gefunden wird. Von den //{} Blöcken kann es beliebig viele geben. für den Anfang und das Ende der Datei gibt es noch BEGIN{} und END{} wo man Anweisungen rein schreibt die vor und nach der Verarbeitung des Eingabefiles ausgeführt werden.
Ups, zu früh gefreut. Wenn die Zeile, die eingefügt werden soll in einer Variablen steht, also z.B. x="Hier die neue Zeile" und ich den Befehl eingebe: awk '{print $0}/AB HIER/{print "$x";}' <x >y wird leider nur $x statt der Inhalt eingefügt. Habe das Ganze mal mit anderen Varianten ausprobiert: '$x' "$x" usw. aber leider kein Erfolg. Was müsste ich denn hierfür angeben ? -- Regards, Jens Strohschnitter ------------------------------------- *!!!LINUX LINUX LINUX LINUX LINUX!!!* * http://www.jens-strohschnitter.de * ------------------------------------- Set the controls for the heart of the sun -------------------------------------