* Es gibt eine Vorlage BACKUP.rtf In dieser Vorlage gibt es ein spezielles Wort, was ich ersetzen möchte (setText).
* Es gibt ein Log-File 2013-07-23_Backup.log, das bei Ausführung generiert wird
Ich möchte gerne 2013-07-23_Backup.log in eine Variabel schieben und diesen Text dann mit dem Wort in BACKUP.rtf ersetzen.
Jetzt kommt der Cloú:
Immer wenn ich den Ersetzungstext aus einem Textfile entnehme, bekomme ich die Fehlermeldung
Entnehme ich den Ersetzungtext aus Bspw. cat /var/log/dmesg funktioniert das einwandfrei.sed: -e Ausdruck #1, Zeichen 52: Unbekannte Option für `s'
So mache ich das schon in meinem wöchenltichen Report ( unten mit angehangen)
Befehle:
Code: Alles auswählen
seta="$(cat $LOGPATH/$FILE)" # Ist das richtige Logfile mit Text
setTextFromFile=$(echo $seta) # geprüft.
sed -i s/setText/"$setTextFromFile"/g $BACKUP/BACKUP.rtf
echo "Step3"
Mit Klammern, mit Hochkomma, mit Klammern bei ${setTextFromFile} usw. keine Änderung.
Wie gesagt, ändere ich oben in seta=${cat /var/log/dmesg | grep USB...} funktioniert das wunderbar.
Gibt es eine andere Syntax, wenn der Ersetzungstext aus einer Datei kommt?
In einem anderen Skript von mir ersetze ich NUR Text in einer Vorlage aus Systeminformationen (CPU, Temp usw.)
Funktioniert prima. Es muss was mit dem Auslesen aus einer Datei zu tun haben.( Bild 2)
Anbei:
Die Vorlage
Weekly Report : Funktioniert schon