Zeichenkettenersetzung in Bash
- Ersetzen einer Zeichenkette durch eine andere in Bash
- Ersetzen Sie die gesamte Zeichenfolge gleich der Teilzeichenfolge
- Ersetzen der letzten erkannten Teilzeichenkette in einer Zeichenfolge in Bash
Bash ermöglicht es uns, andere Programme aufzurufen, und durch die Angabe der erforderlichen Eingaben und Ausgaben können wir jedes Ergebnis generieren. In diesem Artikel wird erläutert, wie Sie eine Teilzeichenfolge durch eine andere Zeichenfolge ersetzen.
Ersetzen einer Zeichenkette durch eine andere in Bash
Der folgende Befehl ersetzt die erste erkannte Zeichenfolge, die mit einer Teilzeichenfolge übereinstimmt, beginnend mit dem ersten Zeichen der Zeichenfolge, durch eine Ersatzzeichenfolge.
${string/substring/replacement}
Sehen wir uns ein Beispiel an.
$ text="I am learning linux and linux"
$ reptext="bash"
$ echo "${text/linux/"$reptext"}''
Ausgabe:
I am learning bash and linux
Wie oben erwähnt, wird der erste String linux
durch bash
ersetzt, der andere bleibt unverändert.
Ersetzen Sie die gesamte Zeichenfolge gleich der Teilzeichenfolge
Wir verwenden den folgenden Befehl, um die gesamte Zeichenfolge, die der Teilzeichenfolge entspricht, durch die Ersatzzeichenfolge zu ersetzen.
${string//substring/replacement}
Sehen wir uns ein Beispiel an:
$ text="I am learning linux and linux"
$ reptext="bash"
$ echo "${text//linux/"$reptext"}"
Ausgabe:
I am learning bash and bash
Jetzt gibt es zwei Schrägstriche (//)
statt einem (/)
. In der Ausgabe können wir sehen, dass der obige Befehl alle Teilzeichenfolgen gleich der Ersatzzeichenfolge ersetzt hat.
Ersetzen der letzten erkannten Teilzeichenkette in einer Zeichenfolge in Bash
Wir verwenden den folgenden Befehl, um die letzte in einer Zeichenfolge erkannte Teilzeichenfolge durch eine Ersatzzeichenfolge zu ersetzen.
${string/%substring/replacement}
Sehen wir uns ein Beispiel an:
$ text="I am learning linux and linux"
$ reptext="bash"
$ echo "${text/%linux/"$reptext"}"
Ausgabe:
I am learning linux and bash