odt-Dateien per Skript bearbeiten
n'Abend,
ich kopiere öfters Webseiten in Writer, um sie dort fürs drucken zu
bearbeiten. Manchmal ist die Datei recht umfangreich, und es ist
mühselig, sie innerhalb von LibreOffice aufzuarbeiten.
Es geht mir darum, Bilder zu entfernen, mehrfache Leerzeilen zu
löschen und eventuell andere unnütze Partien.
Ich dekomprimiere die odt-Datei, bearbeite content.xml und komprimiere
alles wieder zu einer odt-Datei. Versucht habe ich es z. B. mit
folgenden sed-Befehlen:
# löscht Zeilenvorschub (?)
sed -i 's#<text:line-break/>##g' content.xml
# löscht Zeilenvorschub mit neuem Abschnitt
sed -i 's#</text:p>.*"P1">##g' content.xml
# löscht aller Bilder
sed -i 's#<draw:frame.*</draw:frame>##g' content.xml
Ich habe also mühselig versucht herauszufinden, welche Teile der
content.xml ich löschen muss, um mein jeweiliges Ziel zu erreichen.
Das klappt mehr oder weniger bei kleinen Testdateien, funktionniert
aber nicht mit grösseren realen Dateien. Ich frage mich inzwischen, ob
meine Vorgehensweise angebracht ist, und ob so etwas überhaupt mit sed
möglich ist.
Vielleicht hat jemand einen Rat für mich?
schônen Abend
Klaus
Reply to: