Praktischer grundlegender Beispielcode für den Linux-Befehl sed

Praktischer grundlegender Beispielcode für den Linux-Befehl sed

Zusammenfassen

Oben ist der praktische, vom Herausgeber vorgestellte Beispielcode für den grundlegenden Linux-Befehl sed. Ich hoffe, er ist für alle hilfreich. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • Linux-Tutorial zum Ersetzen von Zeichenfolgen mit dem Befehl sed
  • Verwenden Sie den Befehl sed, um die kv-Konfigurationsdatei in Linux zu ändern
  • Eine kurze Diskussion über die Verwendung von sed- und awk-Befehlen in Linux
  • Beschreiben Sie kurz den Linux-Textverarbeitungsbefehl "sed"
  • Häufig verwendete sed-Befehle in Linux
  • Detaillierte Erklärung des Linux-Befehls sed (empfohlen)
  • Zusammenfassung der Verwendung und Vorsichtsmaßnahmen des sed-Befehls unter Linux
  • Ein Shell-Befehl pro Tag Linux-Reihe von Textinhaltsoperationen - ausführliche Erklärung des sed-Befehls
  • Verwendung des sed-Befehls unter Linux
  • Verwendung des Linux-Befehls sed

Der Linux-Stream-Editor ist eine nützliche Möglichkeit, Skripte im Rechenzentrum auszuführen. Mit diesen Befehlsbeispielen können Sie sich mit sed vertraut machen.

Linux-Administratoren, die Dateien ändern möchten, ohne das Original zu überschreiben, haben viele Möglichkeiten, aber eines der effektivsten Tools ist der Stream-Editor sed.

Der Stream-Editor ist ein Standardbestandteil der meisten Linux-Distributionen. Es ermöglicht Ihnen, den Linux-Befehl sed zu verwenden, um Textdateivorgänge im Betriebssystem auszuführen.

Wie die meisten Linux-Anwendungen kann sed weitergeleitete Eingaben verarbeiten, was es zu einem effektiven Skripttool macht. Sie können es als einfaches Such- und Ersetzungstool verwenden, wie im folgenden Beispielbefehl gezeigt, der ein Vorkommen von „a“ findet und durch zwei Instanzen ersetzt. Der Befehl endet mit /g.

sed 's/eins/zwei/g' linuxidc linuxmi 

Beispielsweise kann Ihnen dieser Linux-Sed-Befehl dabei helfen, neue Versionen von Konfigurationsdateien zu finden und zu erstellen. Wenn diese Funktionen als Teil eines Skripts ausgeführt werden, sind sie wiederholbar und konsistent und Sie können Änderungen schnell implementieren.

Der Hauptzweck von sed besteht jedoch darin, den Inhalt von Textdateien zu ändern. Es verwendet einige wichtige Befehlszeilenschalter. /s bedeutet Suchen und der Befehl wird durch /g getrennt. Der Schalter -i führt den Befehl an Ort und Stelle aus – er ändert die Datei direkt.

sed -i ‚s/Port 22/Port 10000/g‘ /etc/ssh/sshd_config 

In diesem Beispiel wird die im Secure Shell-Server in der Datei /etc/ssh/sshd_config verwendete Portnummer vom Standardport 22 auf Port 10000 geändert.

Verwenden Sie den Linux-Befehl sed, um Dateiänderungen vorzunehmen

Es ist möglich, die Datei mit sed zu bearbeiten, aber das ist etwas unbefriedigend. Ad-hoc-Bearbeitungen können Probleme verursachen, da sed keinen Zugriff auf den vollständigen Quellcode hat und Fehler oder Tippfehler nicht erkennen kann. Außerdem wird dadurch die Originaldatei gefährdet, da es nach der Änderung des Originalcodes keine Möglichkeit mehr gibt, ihn wiederherzustellen.

Mit dem Schalter -e können Sie mehrere Änderungen gleichzeitig angeben. Auch hier können Sie mit der Datei sshd_config.conf ganz einfach mehrere Zeilen ändern. Das folgende Skript sieht möglicherweise kompliziert aus, aber das Betriebssystem übergibt lediglich mehrere Pakete mit Sed-Änderungen, die jeweils mit -e beginnen.

Mithilfe der Datei sshd_config können Sie in einem Schritt die Portnummer ändern, die Kennwortauthentifizierung deaktivieren und die Public-Key-Authentifizierung aktivieren.

sed -i -e ‚s/Port 22/Port 10000/g‘ -e‘
s/PermitRootLogin ja/PermitRootLogin nein/g' -e '
s/PasswortAuthentifizierung ja/PasswortAuthentifizierung nein/g' -e '
s/#PasswortAuthentifizierung nein/#PasswortAuthentifizierung nein/g' /etc/ssh/sshd_config 

Die Such- und Ersetzungsfunktionen stehen in einer neuen Zeile; das Abtrennen des Befehls mit \ funktioniert nicht, da sed dies als Sonderzeichen behandelt.

Kombinieren von Eingabeaufforderungen in sed

Sie können auch mehrere Linux-Sed-Befehle miteinander verketten, um den Speicherort einer Anwendung zu ändern. Beim manuellen Ändern von Dateipfaden kann es zu vielen Fehlern kommen, aber die Automatisierung kann das Leben einfacher machen.

Die Verwendung des Backslashs als Trennzeichen funktioniert bei manchen Skripten möglicherweise nicht, aber mit sed können Sie das Trennzeichen ändern. Angenommen, Sie haben eine Protokolldatei namens example.conf mit folgendem Inhalt:

logpfad = /var/log/meinelogdatei.log

Ändern Sie diesen Pfad in /my/alternate/path/newlog.log . Sie können | als Trennzeichen verwenden, da / in Dateisystempfaden nicht funktioniert.

sed -i 's|/var/log/mylogfile.log|/my/alternate/path/newlog.log|g' beispiel.conf

Sie können den Linux-Befehl sed auch verwenden, indem Sie dem Suchmuster ^#MyComment voranstellen. Dadurch werden nach Zeilen gesucht, die mit #MyComment beginnen. Dies können Sie ausgabeseitig nutzen, so dass eine neue Zeile entsteht und eine bestehende ersetzt. Sie können auch das $-Zeichen verwenden, um Inhalte am Ende einer Zeile zu suchen.

Um fortgeschrittenere Beispiele anzuzeigen, verwenden Sie den Befehl „man sed“. Es bietet eine detailliertere Aufschlüsselung der Befehle und Syntax.

<<:  Zusammenfassung der langsamen MySQL-Abfragevorgänge

>>:  JavaScript-Kreisdiagrammbeispiel

Artikel empfehlen

CSS transparenter Rahmen Hintergrund-Clip-Magie

In diesem Artikel wird hauptsächlich die wunderba...

Grundlegende Konzepte und allgemeine Methoden des Map-Mappings in ECMAScript6

Inhaltsverzeichnis Was ist eine Zuordnung? Unters...

Die Verwendung des V-Modells in Vue3-Komponenten und ausführliche Erklärung

Inhaltsverzeichnis Verwenden Sie bidirektionale B...

Tutorial zur Installation von MySQL unter Linux

Inhaltsverzeichnis 1. Löschen Sie die alte Versio...

Was ist ein MySQL-Index? Fragen Sie, wenn Sie es nicht verstehen

Inhaltsverzeichnis Überblick Vom Binärbaum zum B+...

Unterschiede zwischen proxy_pass in zwei Modulen in nginx

1. Die proxy_pass -Direktive des Moduls 1.ngx_str...

js realisiert 3D-Soundeffekte durch audioContext

In diesem Artikel wird der spezifische Code von j...

Skin-Change-Lösung basierend auf Vue kombiniert mit ElementUI

Inhaltsverzeichnis Vorne geschrieben Lösung 1: Gl...

Netzwerkkonfiguration des Host Only+NAT-Modus unter VirtualBox

Die Netzwerkkonfiguration des Host Only+NAT-Modus...

Beispiel für die Implementierung der Hochverfügbarkeit von Keepalived+Nginx

1. Einführung in Keepalived Keepalived wurde ursp...

So überwachen und löschen Sie abgelaufene Sitzungen in Tomcat

Vorwort Ich habe zufällig entdeckt, dass die halb...