- Schnitt
- Awk
- Sed
Dieser Artikel enthält mehrere Beispiele, um Ihr Verständnis des Konzepts des Abrufens einer Teilzeichenfolge nach einem bestimmten Zeichen zu verbessern.
Um den Beispielen in diesem Tutorial zu folgen, melden Sie sich zuerst bei Ihrem Linux-System an und öffnen Sie das Terminal. Als nächstes erstellen Sie eine neue Datei mit dem Namen „input“.Sch.”
Beispiel 1: Verwenden des Cut-Keywords
Öffnen Sie die Datei „Eingabe“.sh“ aus dem Home-Verzeichnis und schreibe den folgenden Code in die Datei. In unserem ersten Beispiel definieren wir einen String namens „string“ mit einem Wert darin, der einige Zeichen und Zahlen enthält. Wir verwenden in diesem Code das Schlüsselwort „cut“, gefolgt von „-d“, um die Teilzeichenfolge der bestimmten Zeichenfolge zu erhalten. Danach geben wir das genaue Zeichen in Anführungszeichen als „-“ an, damit der Teilstring nach diesem Sonderzeichen durchsucht wird.
Hier ist es wichtig, die Grundidee der Teilstringbildung zu verstehen. Sie müssen sich daran erinnern, wie Sie das Schlüsselwort „f“ einfügen, wenn Sie den Befehl „cut“ verwenden. Das Schlüsselwort „f“ kann auf verschiedene Weise verwendet werden, um einen Teilstring zu erstellen, also schauen wir uns diese spezielle Methode an.
-f2: Text nach dem ersten Sonderzeichen „-“ und vor dem nächsten „-“
Dies bedeutet, dass die Teilzeichenfolge „bar“ angezeigt werden sollte, da sie sich nach dem ersten „-“-Zeichen und vor dem nächsten „-“-Zeichen befindet.
Nach dem Ausführen dieser Bash-Datei haben wir wie erwartet die Teilzeichenfolge „bar“ erhaltenbar.
Jetzt werden wir das gleiche Beispiel für das Schlüsselwort „-f2-“ überprüfen. Aktualisieren Sie die Datei, wie unten beschrieben.
-f2-: der Text nach dem ersten Sonderzeichen „-“ unabhängig davon, ob zahlreiche „-“-Zeichen vorhanden sind.
Dies bedeutet, dass die Teilzeichenfolge „bar-123“ angezeigt wird, da sie sich nach dem ersten „-“-Zeichen befindet, unabhängig davon, ob „-“-Zeichen vorhanden sind.
Nach dem Ausführen dieser Bash-Datei haben wir die Teilzeichenfolge „bar-123“ erhalten, da sie sich nach dem ersten „-“-Zeichen befindet.
Wir nehmen jetzt die gleiche Bedingung mit kleinen Änderungen an der Zeichenfolge und den Zeichen. Wir haben den neuen String „str“ definiert und ihm einen anderen Wert zugewiesen. In diesem Beispiel ist „i“ das zu suchende Sonderzeichen aus der ursprünglichen Zeichenfolge, und ab diesem Zeichen erstellen wir eine Teilzeichenfolge. In diesem Fall haben wir verwendet:
-f2: um eine Teilzeichenfolge nach dem ersten Sonderzeichen „i“ und vor dem nächsten Zeichen „i . zu erstellen.”
Dies bedeutet, dass die Teilzeichenfolge „ltEff=str“ angezeigt werden sollte, da sie sich nach dem ersten „i“-Zeichen befindet.
Wenn die Datei ausgeführt wird, wird eine Teilzeichenfolge vor dem nächsten „i“ und nach dem ersten „i“ abgerufen.”
Sie können diese Methode mit derselben String-Zeile ausprobieren, wie in der Abbildung unten gezeigt:
Es wird das gleiche Ergebnis wie oben angezeigt.
Jetzt verwenden wir das Schlüsselwort „cut“ mit geringen Änderungen an der Bedingung „f“ in einer einzigen Zeile. In diesem Fall verwenden wir „f1“, um das Ergebnis des Teilstrings zu ändern. Wir benutzen:
-f1: um eine Teilzeichenfolge vor dem ersten Sonderzeichen „i.”
Daraus folgt, dass die Teilzeichenfolge „GenF“ angezeigt werden soll, da sie vor dem Sonderzeichen „i.”
Die Ausgabe unten ist wie erwartet.
Hier verwenden wir das gleiche Beispiel mit kleinen Änderungen. Wir haben die alte Methode dafür verwendet.
Das Ergebnis dieses Skripts ist das gleiche wie oben.
Als nächstes verwenden wir im gleichen Beispiel das „cut“-Schlüsselwort, während wir das Schlüsselwort „f .“ ändern.” Hier verwenden wir „f3“, um das Ergebnis der Teilzeichenfolge zu ändern, und wir verwenden:
-f3: um einen Teilstring nach dem nächsten Sonderzeichen „i.”
Dies zeigt an, dass die Teilzeichenfolge „ng“ angezeigt werden soll.-01234“, da es sich nach dem nächsten Sonderzeichen „i .“ befindet.”
Wir werden denselben Code mit dem Bash-Befehl ausführen run. Unten seht ihr das neue Ergebnis:
Beispiel 2: Verwenden des Awk-Schlüsselworts
Öffnen Sie die Datei „Eingabe“.sh“ und schreibe den angehängten Code in die Datei. Hier haben wir eine echo-Anweisung mit der Zeichenfolge „foo-bar-123“ mit dem Schlüsselwort „awk“ deklariert. Dem Druckbegriff folgt das Schlüsselwort „-F-“. Dadurch wird nach dem nächsten Sonderzeichen, das „123“ ist, eine Teilzeichenfolge erstellt und gedruckt. Das Sonderzeichen muss in diesem Fall nicht definiert werden.
Das Folgende ist die Ausgabe „123“, die oben erwähnt wurde.
Beispiel 3: Verwenden des Sed-Schlüsselworts
In diesem Beispiel aktualisieren wir dieselbe Datei mit dem unten angegebenen Code update. In diesem Fall wird das Schlüsselwort „sed“ anstelle von „cut“ oder „awk . verwendet.”
Dieser Code zeigt eine ähnliche Ausgabe wie im vorherigen Beispiel an.
Beispiel 4: Verwenden von Sonderzeichen
Im nächsten Beispiel aktualisieren wir dieselbe Datei mit dem unten angegebenen Code update. Hier definieren wir drei Strings: „string“, „searchstr“ und „temp.” Wir haben “$string%$searchstr*” im Code. Das „%“ sucht nach dem Wert der Variablen „searchstr“, die „und“ ist, und entfernt alles nach dieser speziellen Variablen aus der ursprünglichen Zeichenfolge. Der restliche Text wird in der Variablen „temp“ gespeichert.“ Jetzt wird die Variable „temp“ zusammen mit dem Text „Dies ist eine neue Zeichenfolge“ gedruckt.”
Wenn wir den obigen Code ausführen, wird zuerst der Originalstring ausgegeben; dann wird der neue Teilstring gedruckt.
Im gleichen Beispiel mit einem kleinen Update verwenden wir die Zeichenfolge „#*“, sodass alles, was dem Wert von „searchstr“ folgt, der „und“ ist, in die Variable „temp“ eingefügt wird.”
Wenn Sie es in Bash überprüfen, werden Sie sehen, dass die alte Zeichenfolge zuerst gedruckt wird. Da "es wird entfernt" ein neuer Wert der Variablen "temp" ist, wird es danach in der nächsten Zeile zuerst zusammen mit dem Text "Dies ist eine neue Zeichenfolge" gedruckt.”
Fazit
Wenn Sie eine Teilzeichenfolge aus einer beliebigen Zeichenfolge mit einem darin enthaltenen Sonderzeichen erhalten möchten, können Sie dies mit den oben bereitgestellten Methoden tun.