Neben Suchen & Ersetzen kann sed auch ganze Zeilen manipulieren.
Du kannst sie löschen, durch neuen Text ersetzen, neue Zeilen einfügen oder Text anhängen.
In diesem Kapitel lernst du die wichtigsten Befehle, um gezielt mit Zeilen zu arbeiten.
🔹 Zeilen löschen (d)
Syntax:
sed 'ADRESSEd' datei
- Erste Zeile löschen:
sed '1d' text.txt
- Zweite bis vierte Zeile löschen:sed ‚1d‘ text.txt
sed '2,4d' text.txt
- Alle Kommentarzeilen (beginnend mit
#) löschen:sed '/^#/d' config.txt
👉 Sehr nützlich, um Logs oder Konfigurationsdateien zu bereinigen.
🔹 Zeilen einfügen (i = insert, a = append)
-
Vor einer Zeile einfügen (
i):
sed '3i\Dies ist eine neue Zeile' text.txt
→ Fügt vor Zeile 3 eine neue Zeile ein.
-
Nach einer Zeile anhängen (
a):
sed '3a\Dies ist eine angehängte Zeile' text.txt
→ Fügt nach Zeile 3 eine neue Zeile ein.
🔹 Zeilen ersetzen (c)
Ersetzt die gesamte Zeile durch neuen Text:
sed '2c\Neue zweite Zeile' text.txt
👉 Die zweite Zeile wird vollständig durch „Neue zweite Zeile“ ersetzt.
🔹 Zeilenbereiche bearbeiten
Du kannst auch Bereiche ansprechen:
- Zeilen 5 bis 10 löschen:
sed '5,10d' text.txt
- Zeilen 2 bis 4 durch einen Marker ersetzen:
sed '2,4c\### GESCHNITTEN ###' text.txt
👉 Praktisch für Protokolle, um nur einen bestimmten Teil zu behalten.
🔹 Nur bestimmte Muster bearbeiten
- Alle Zeilen mit „ERROR“ löschen:
sed '/ERROR/d' logfile
- Alle Zeilen mit „INFO“ durch „LOGEINTRAG“ ersetzen:
sed '/INFO/c\LOGEINTRAG' logfile
- Eine Zeile nach einem Treffer einfügen:
sed '/Alice/a\>> Alice gefunden' users.txt
🔹 Beispiel: Vor und nach Zeilen einfügen
Datei demo.txt:
Alice Bob Charlie
Befehle:
sed '/Bob/i\--- Vor Bob ---' demo.txt sed '/Bob/a\--- Nach Bob ---' demo.txt
Ausgabe:
Alice --- Vor Bob --- Bob --- Nach Bob --- Charlie
👉 Mit i und a kannst du gezielt Struktur einfügen.
🔹 Übung
1. Erstelle eine Datei namen.txt:
Alice Bob Charlie Diana Eve
- Lösche die zweite Zeile.
- Ersetze die dritte Zeile durch
NEUER NAME. - Füge vor der vierten Zeile
--- Start ---ein. - Füge nach der letzten Zeile
--- Ende ---an.
2. Erstelle eine Datei logs.txt mit Einträgen (INFO, ERROR, WARN).
- Lösche alle
INFO-Zeilen. - Ersetze alle
WARN-Zeilen durchHINWEIS. - Füge nach jeder
ERROR-Zeile>>> Fehler entdecktein.
✅ Zusammenfassung
Mit d löscht du Zeilen, mit c ersetzt du sie komplett.
Mit i und a kannst du vor oder nach Zeilen Text einfügen.
Bereiche (2,4d) oder Muster (/ERROR/d) erlauben gezieltes Bearbeiten.
Damit kannst du Konfigurationsdateien, Logs oder CSV-Dateien elegant umstrukturieren.
👉 Im nächsten Kapitel lernst du, wie du komplexe Transformationen mit sed-Skripten umsetzt – also mehrere Regeln kombinierst und als Skript speicherst.
📚 Inhaltsverzeichnis
👉 sed Kapitel 1: Grundlagen von sed – erste Ersetzungen & Konzepte
👉 sed Kapitel 2: Suchen & Ersetzen mit sed – Grundlagen & Regex
👉 sed Kapitel 3: Zeilen bearbeiten mit sed
👉 sed Kapitel 4: sed-Skripte schreiben & kombinieren
👉 sed Kapitel 5: sed in Kombination mit anderen Tools
👉 sed Kapitel 6: Praxisprojekt – Konfigurationsdateien automatisch bereinigen & anpassen
⭐ Bonus-Kapitel
👉 sed Kapitel 7: Bonus – Profi-Tipps & Best Practices für sed im Alltag
