Wie bereits erwähnt, wird ein sed-Skript der Reihe nach ausgeführt. Zuerst wird nach einem übereinstimmenden Muster gesucht und die Anweisung ausgeführt. Dann wird die Ausgabe erzeugt und dieser Prozess für jede Zeile des Skripts wiederholt. Nach jeder Befehlsausführung innerhalb des Skripts wechselt sed zur nächsten Zeile der Eingabe-Datei und wiederholt diesen Prozess für jeden Befehl des Skripts.
sed wird von der Kommandozeile aus wie folgt aufgerufen:
#sed [Optionen] Skriptdatei/Befehl Eingabedatei
Als Beispieldaten dient eine einfache Adressliste mit Namen phonelist.txt. Der Datensatz enthält Name, private Telefon-Nummer, Handy-Nummer und E-Mail-Adresse:
John Doe, 100-555-1111, 100-555-1112, johndoe@some.com Jane Doe, 100-555-2222, 100-555-1113, janedoe@another.com Jimmy Dean, 101-555-1111, 101-555-2222, deanj@jimmys.com
Versuchen wir es zuerst einmal mit einem einfachen sed-Bearbeitungsbefehl:
$sed 's/100-/(100) /' phonelist.txt
Dieser Befehl ändert die erste Telefon-Nummer mit der Vorwahl 100 vom Format xxx-xxx-xxxx zu (xxx) xxx-xxxx.
Wenn wir alle 100er-Vorwahlen ändern wollen, benutzen wir die Option /g:
$sed 's/100-/(100) /g' phonelist.txt
Damit wird die Veränderung auf jedes Vorkommen des Musters innerhalb der Zeile angewandt. Man kann auch mehrere Anweisungen in einer Zeile unterbringen, entweder mit der Option -e oder durch Verwendung eines Semikolons (;) zur Trennung der Befehle:
$sed -e 's/100-/(100) /g'-e 's/101-/(101) /g' phonelist $sed 's/100-/(100) /g'; 's/101-/(101) /g' phonelist
Sobald man mehrere Befehle braucht, ist es praktischer, mit einer Skriptdatei zu arbeiten. Das Format für eine solche Skriptdatei ist einfach: ein Befehl pro Zeile.
$sed -f scriptfile inputfile
Mithilfe von Shell-Umleitungen kann man die Ausgabe in einer Datei speichern:
$sed -f scriptfile inputfile >outputfile
Eine weitere gebräuchliche Option ist -n. Diese Option beschränkt die Ausgabe auf diejenigen Zeilen, bei denen mit einer Ausgabe zu rechnen ist. Diese sind mit einem /p am Ende des Befehl gekennzeichnet:
$sed -n 's/pattern/substitute/p' inputfile
Dieser Befehl druckt nur die vorgenommenen Veränderungen aus.
Seine Trainingsdaten umfassen 3,8 Milliarden Parameter. Laut Microsoft bietet es eine ähnliche Leistung wie OpenAIs…
Sie erlaubt eine Remotecodeausführung außerhalb der Sandbox. Betroffen sind Chrome für Windows, macOS und Linux.
Probleme treten vor allem bei Nutzern von Outlook Web Access auf. Das optionale Hotfix-Update für…
Die Einladung zeigt einen zeichnenden Apple Pencil. Der wiederum deutet auf neue iPads hin. Es…
Die Richtlinie erhält 584 Ja-Stimmen und 3 Gegenstimmen. Das „Recht auf Reparatur“ beinhaltet unter bestimmten…
Die Tests basieren auf tatsächlich existierenden Sicherheitslücken. GPT-4 erreicht eine Erfolgsquote von 87 Prozent. Alle…