SED - Der Stream Editor unter Linux
Hier entsteht eine Sammlung von SED Beispiel Befehlen, die einem das Arbeiten erleichtern sollen. Mit SED kann man in diversen Skripten Befehle Manipulieren oder Sachen in Dateien austauschen. Es gibt viele Anwendungsbeispiele für SED und es ist immer wieder ein Erfolgserlebnis wenn der SED String funktioniert.
SED - ein paar Befehlsbeispiele
Suchen und ersetzten mit sed
will man in Dateien Worte austauschen geht das folgendermaßen:
sed 's/'SUCHE'/'ERSETZE'/g' orginal.file > new.file
oder um die Datei in-place zu editieren:
sed -i 's/'SUCHE'/'ERSETZE'/g' orginal.file
Alle Zeilen ein/auskommentieren mit sed
Jede Zeile auskommentieren:
sed -i 's@^@#@g' orginal.file
Den Kommentar am Anfang jeder Zeile entfernen:
sed -i 's@^#@@g' orginal.file
Weitere Beispiele
Sucht nach einen String und ersetzt die gesamte Zeile:
sed -i "s/.*Port 22.*/Port 222/g" /etc/ssh/sshd_config
Löscht das erste und Letzte Zeichen eines Streams
sed 's/^.\(.*\).$/\1/'
Schneidet das Letzte Zeichen eines Streams ab
sed 's/.$//'
Schneidet das Letzte Zeichen der letzten Zeile ab
sed '$s/.$//'
Fügt einer Zeil, in der der ZEILENTEXT vorkommt den ANHANGTEXT an
sed -e '/'ZEILENTEXT'/s!$!'ANHANGTEXT'!'
Bestimmte Zeilen kommentieren:
sed -i "/restrict -6/s/^\(.*\)/#\1/g" /etc/ntp.conf