Hallo goeb,
danke für deine Antwort, aber ich scheine irgendwas falsch zu machen darum habe ich mal ein minimales Beispiel zusammen gebastelt, vielleicht kannst Du (oder ein anderer Leser von diesem Thread) mir sagen wo der Fehler liegt.
Script: test.sh
Code: Alles auswählen
#!/bin/bash
# Erstellt anhand des Befehls "svn log" einen Changelog in einer HTML-Datei
# 27.07.2013: Script-Erstellung
PWD=`pwd`
TEMPLATE=$PWD/output.tmpl
TEMP_FILE=/tmp/input.tmp
sed '/###content###/ {
r "$TEMP_FILE"
d
}' $TEMPLATE
# Aufraeumen
# rm $TEMP_FILE
HTML-Template: output.tmpl
Code: Alles auswählen
<html>
<head>
<title>
title
</title>
</head>
<body>
###content###
</body>
</html>
Eingabedaten: input.tmp (diese werden im tatsächlichen Script per awk aus svn log geholt
Code: Alles auswählen
2013-07-26: Java-Algorithmus-Sammlung unter Versionskontrolle gestellt
2013-07-12: Theme-Ordner aktualisiert
2013-07-12: theme als vorbereitung zum update gelöscht und include geupdated
2013-07-12: include als vorbereitung zum update gelöscht
2013-07-10: Struktur für ein neues Template angelegt
2013-07-09: Perl-Script zum Sichern von SMS in eine MySQL-Datenbank ins Repository aufgenommen
2013-07-05: Aktuelle Version von cdc eingecheckt
2013-07-03: re-add license
2013-07-03: re-import of cdc project
2013-07-01: Inhalt von data hinzugefuegt
2013-07-01: Umstellen auf eine "saubere" Projektstruktur
Wenn ich das ganze jetzt aber ausführe, wird der ###content### einfach entfernt und es steht nur noch die HTML Datei da, also
Code: Alles auswählen
<html>
<head>
<title>
title
</title>
</head>
<body>
</body>
</html>
Ich bin ehrlich gesagt ziemlich ratlos warum sich sed so verhält den ersetzt wird ja offenbar etwas bloß wandern nicht die Daten in die Ausgabe...
Viele Grüße
Dan
I love deadlines. I like the whooshing sound they make as they fly by - Douglas Adams