Heute besitzt fast jeder Editor eine Suchen & Ersetzen Funktion. Für kleinere Dateien reicht diese Funktion meist auch aus. Doch was wenn man größere Dateien, wie etwa SQL-Dateien, die schon mal mehrere GB groß sein können, bearbeiten muss… Ein herkömmlicher Editor wäre nicht mal imstande so eine Datei zu öffnen. Hier kommt „SED“ ins Spiel – ein Stream-Editor der quasi auf jeder Linux-Distribution vorinstalliert ist. SED bietet keine Grafische Oberfläche und wird auf der Konsole ausgeführt (unter Ubuntu: Anwendungen -> Zubehör -> Terminal).
Zwei einfache Befehle als Beispiel:
sed s/suchstring/ersatzstring/g -i datei.txt
Dieses Beispiel ersetzt den String „suchstring“ durch „ersatzstring“. Es werden alle Vorkommen in der Datei ersetzt – beispielsweise auch „suchstringnocheintext„! Würde man zudem das „g“ (was für Global steht), weggelassen, so wird lediglich das erste Vorkommen ersetzt.
sed /test/s/suchstring/ersatzstring/g -i datei.txt
Genau wie oben, werden auch hier alle Vorkommen ersetzt. Allerdings wird der String nur in Zeilen ersetzt, die das Wort „test“ enthalten.
Hinweis: SED unterscheidet bei den oben gezeigten Beispielen zwischen Groß und Kleinschreibung. Soll heißen, Suchstring wird nicht ersetzt, sofern nach suchstring gesucht wird. Auch SUCHSTRING oder suchSTRing wird nicht ersetzt. Möchte man vermeiden, dass SED zwischen Groß und Kleinschreibung unterscheidet, so muss noch der Parameter „i“ angehängt werden.
Beispiel:
sed s/suchstring/ersatzstring/gi -i datei.txt
Ich habe für euch auch noch ein paar Links zusammengestellt, wo ihr weitere nützliche Befehle ect. finden könnt. SED unterstützt auch Regular Expressions (Reguläre Ausdrücke). Zudem ist die „Suchen & Ersetzen“ Funktion nur ein kleiner Teil, von dem was SED beherrscht. SED ist ein sehr mächtiges Programm!