Thema: Zeichen ersetzen und Wortwiederholungen korrigieren Zielgruppe: Dokumenten-Ersteller Motivation: Alltagsaufgaben automatisieren Titelbild: SVG-Beispiel mit sed-Ersetzungen vorhandener Werte
Es kommt vor, dass viele schon erstellte Dokumente nachträglich geändert werden müssen. Dabei hilft die Shell.
Inhaltsverzeichnis
Korrekturen
In diesem Beispiel soll ein wiederholtes Vorkommen des Wortes „viel“ innerhalb einer Zeile im gesamten Dokument korrigiert werden.
sed -i 's/viel/viel mehr/2; s/viel/noch mehr/3;' Dokument.txt
Die Korrektur wird sofort in das Dokument geschrieben und zwar mit folgenden Werten:
- Das erste Wort „viel“ bleibt erhalten
- Das zweite Wort „viel“ wird ersetzt mit „viel mehr“
- Das dritte Wort „viel“ wird ersetzt mit „noch mehr“
- Jedes weitere „viel“ bleibt dann erhalten, aber dann stimmt ohnehin etwas nicht
Umleitung in eine neue Datei
Um das alte Dokument zu erhalten und die Änderungen in ein neues Dokument zu bekommen, empfehle ich folgendes:
sed 's/viel/viel mehr/2; s/viel/noch mehr/3;' Dokument.txt > Dokument_neu.txt
Office-Dokumente und Multimedia-Dateien
In dieser Art können auch Office- und Multimedia-Dateien manipuliert werden. Die Vorgehensweise ist aber durch die Archiv-Dateien von MS Office, LibreOffice, Videos, Musikdateien und anderen xml-Archiven etwas komplexer.
So ähnlich ist auch der Ansatz, um in allen tausenden Dokumenten den Wert „Alter Firmenname“ durch den Wert „Neuer Firmenname“ zu ersetzen, ohne diese manuell jeweils einzeln zu öffnen. Die Zeitersparnis ist offensichtlich!
