Linux: sed
18. November 2023
Das sed-Kommando in Linux steht für „stream editor“ und wird verwendet, um Textzeilen in Dateien oder Eingabequellen zu bearbeiten. Nachfolgend sind einige grundlegende Konzepte aufgelistet, um einen ersten Überblick zu schaffen.
Klassisches Suchen und Ersetzen
Suche nach alterWert und ersetze durch neuerWert (nur das erste Vorkommen pro Zeile).
sed 's/alterWert/neuerWert/' script.sh
Suche nach alterWert und ersetze durch neuerWert (alle Vorkommen pro Zeile).
sed 's/alterWert/neuerWert/g' script.sh
Mehrere Suchen/Ersetzen gleichzeitig
sed 's/alterWert1/neuerWert1/; s/alterWert2/neuerWert2/' script.sh
Löschen von Zeilen
Löschen von Leerzeilen
sed '/^$/d' script.sh
Ausgabe aller Zeilen exkl. Zeile 1 bis 3
sed 1,3d script.sh
Einfügen von Zeilen
Es gibt zwei Möglichkeiten, Zeilen einzufügen:
- i (insert) – vor dem Treffer
- a (append) – nach dem Treffer
sed '/muster/i neueZeile'
sed '/muster/a neueZeile'