Häufig verwendetes 'Sed' -Cheat Sheet:
Die am häufigsten verwendeten Zeichen, die im Befehl "SED" verwendet werden.
Charakter | Zweck |
A | Es wird zum Anhängen von Inhalten verwendet. |
B | Es wird zum Verzweigungsinhalt verwendet. |
C | Es wird zum Ändern des Inhalts verwendet. |
D | Es wird zum Löschen einer Zeile einer Datei verwendet. |
D | Es wird verwendet, um die erste Zeile einer Datei zu löschen. |
G | Früher kopierte es aus dem Haltetext. |
G | Es wird verwendet, um sich vom Holding -Text anzuhängen. |
H | Es wird verwendet, um im Haltetext zu kopieren. |
H | Es wird verwendet, um den Holding -Text anzuhängen. |
ich | Es wird zum Insertion verwendet. |
ICH | Es wird verwendet, um die Ersatzlinie zu drucken. |
N | Es wird verwendet, um in die nächste Zeile zu gehen. |
N | Es wird verwendet, um die nächste Eingangslinie anzuhängen. |
P | Es wird zum Drucken verwendet. |
P | Es wird verwendet, um die erste Zeile zu drucken. |
Q | Es wird verwendet, um aufzuhören. |
Q | Es wird verwendet, um sofort aufzuhören. |
R | Es wird verwendet, um die Datei zu lesen. |
R | Es wird verwendet, um die Zeile aus der Datei zu lesen. |
S | Es wird verwendet, um zu ersetzen. |
T | Es wird verwendet, um Substitution zu testen. |
T | Es wird verwendet, um ohne Substitution zu testen. |
w | Es wird verwendet, um in die Datei zu schreiben. |
W | Es wird verwendet, um eine Zeile zur Datei zu schreiben. |
X | Es wird verwendet, um Muster auszutauschen und zu halten. |
y | Es wird verwendet, um zu übersetzen. |
z | Es wird verwendet, um die Linie zu löschen. |
'=' | Es wird verwendet, um die Zeilennummer zu drucken. |
Ersetzen Sie mehrere Linien, indem Sie den Befehl "SED" aus dem Terminal verwenden:
Wie der Befehl 'SED' verwendet werden kann, um die mehreren Zeilen aus einer Datei aus dem Terminal aus diesem Teil dieses Tutorials zu ersetzen. Erstellen Sie eine Datei mit dem Namen sed.txt Testen Sie mit dem folgenden Inhalt die Befehle dieses Teils.
sed.txt
Die vollständige Form von SED ist "Stream Editor".
Es ist ein Unix -Dienstprogramm, mit dem der Text in einem anderen Format gelesen und konvertiert wird.
Es wurde von Lee E entwickelt. McMahon.
Es wird für die Textverarbeitung verwendet.
Es unterstützt regelmäßige Ausdrücke.
Beispiel 1: Ersetzen Sie zwei aufeinanderfolgende Linien
Der folgende Befehl 'SED' ersetzt zwei aufeinanderfolgende Linien durch eine andere Zeile. Hier wird die Option -Z verwendet, um die aufeinanderfolgenden Zeilen durch Nulldaten zu ersetzen, bevor der Ersatztext hinzugefügt wird. Nach dem Befehl die 3Rd und 4th Zeilen der Datei werden durch den Text ersetzt, "Es ist ein sehr nützliches Werkzeug".
$ cat sed.txt
$ sed -z 's/es wurde von Lee E entwickelt. McMahon.\ nit wird für Text verwendet
wird bearbeitet./Es ist ein sehr nützliches Werkzeug./'sed.txt
Nach dem Ausführen der Befehle wird die folgende Ausgabe angezeigt.
Beispiel 2: Ersetzen Sie mehrere Zeilen basierend auf Match und Global Flag
Der folgende Befehl 'SED' ersetzt alle Zeilen, die mit dem Wort beginnen, 'Es' durch das Wort ''Diese Linie wird ersetzt ''.
$ cat sed.txt
$ sed 's/^es.*/Diese Linie wird ersetzt/g 'sed.txt
Nach dem Ausführen der Befehle wird die folgende Ausgabe angezeigt. Drei Zeilen enthalten das Wort 'Es' in der Datei. Diese Zeilen wurden also durch den Ersatztext ersetzt.
Beispiel-3: Ersetzen Sie mehrere Zeilen basierend auf dem Befehl Match und Next-Line
Der folgende Befehl 'SED' ersetzt das Wort ','Ist"Durch das Wort", "War'Mit dem Befehl nächster Linie' N '.
$ cat sed.txt
$ sed 'n;/is/s/is/war/' sed.txt
Nach dem Ausführen der Befehle wird die folgende Ausgabe angezeigt. Hier, 'Ist' existiert in der 2nd und 4th Zeilen der Datei und diese Zeilen werden durch das Wort geändert 'War'.
Ersetzen Sie mehrere Zeilen, indem Sie die Skriptdatei "SED" erstellen:
In den vorherigen Beispielen wurden 'SED' Befehle aus dem Terminal ausgeführt. Es handelt sich jedoch um eine Skriptsprache, und wenn das Skript mehrere Anweisungen enthält, ist es besser, eine SED -Datei mit dem Skript zu erstellen. Erstellen Sie eine Textdatei mit dem Namen Studenten.txt mit dem folgenden Inhalt, in dem das Skript "SED" angewendet wird.
Studenten.txt
ID: 111045Beispiel-4: Ersetzen Sie mehrere Zeilen einer Datei mit der Skriptdatei von 'SED'
Erstellen Sie eine SED -Datei, benannt nach ersetzen.sed mit dem folgenden Inhalt, um die mehreren Zeilen basierend auf dem Suchmuster zu ersetzen. Hier das Wort 'CSE'wird in der Textdatei durchsucht und wenn die Übereinstimmung existiert, wird erneut die Nummer 35 und 15 durchsucht. Wenn das zweite Spiel in der Datei vorhanden ist, wird es durch die Nummer 45 ersetzt.
ersetzen.sed
/ Cse/
p; n;
/ 35/
s/35/45/;
p; d;
/15/
S/15/55/;
p; d;
P;
Führen Sie den folgenden Befehl aus, um den vorhandenen Inhalt der Datei zu überprüfen. 'CSE' erschien viermal in der Textdatei. 35 und 15 existieren an zwei Stellen.
$ CAT -Studenten.txt
Der folgende Befehl ersetzt den Inhalt der mehreren Zeilen basierend auf dem SED -Skript.
$ sed -n -f ersetzen.SED -Studenten.txt
Die folgende Ausgabe wird nach dem Ausführen des Befehls angezeigt.
Abschluss
In diesem Tutorial wurden verschiedene Möglichkeiten zum Ersetzen mehrerer Zeilen oder des Inhalts der Mehrfachzeilen mit dem Befehl 'SED' gezeigt. Wie das Skript "SED" aus einer SED -Datei ausgeführt werden kann, wird auch in diesem Tutorial gezeigt. Ich hoffe.