Entfernen Sie das erste Zeichen aus der Zeichenfolge in Bash
-
Verwenden Sie den Befehl
sed
, um das erste Zeichen aus der Zeichenfolge in Bash zu entfernen -
Verwenden Sie den Befehl
cut
, um das erste Zeichen aus der Zeichenfolge in Bash zu entfernen -
Verwenden Sie den Parameter
substring
, um das erste Zeichen aus der Zeichenfolge in Bash zu entfernen
Das Entfernen des ersten Zeichens einer Zeichenfolge in Bash kann schwierig sein, da es keine eingebaute Funktion gibt, die dies direkt tun kann. Es gibt jedoch mehrere Möglichkeiten, dies zu erreichen, z. B. die Verwendung des Befehls sed
, des Befehls cut
oder der Parametererweiterung substring
.
In diesem Beitrag wird beschrieben, wie Sie die einzelnen Ansätze verwenden, um das Anfangszeichen aus einer Zeichenfolge in Bash zu entfernen.
Verwenden Sie den Befehl sed
, um das erste Zeichen aus der Zeichenfolge in Bash zu entfernen
In Bash können Sie das Anfangszeichen einer Zeichenfolge mit dem Befehl sed
löschen, und wir können den Befehl s
(substitute) mit dem regulären Ausdruck ^
(start of line) verwenden. Der Befehl s
ermöglicht es uns, nach einem Muster in einem String zu suchen und diesen String gegen einen anderen String auszutauschen, während der reguläre Ausdruck ^
auf den Anfang der Zeile passt.
Nehmen wir zum Beispiel an, wir haben einen String namens my_string
, der das Wort Welcome
enthält, und wir möchten das erste Zeichen (den Buchstaben W
) entfernen. Dazu können wir den Befehl sed
verwenden:
my_string="Welcome"
new_string=$(echo "$my_string" | sed 's/^.//')
echo "The modified string is: $new_string"
Ausgang:
The modified string is: elcome
Im obigen Code verwenden wir den Befehl sed
, um nach dem Muster ^
zu suchen. in die Variable my_string
und ersetzen Sie sie durch einen leeren String. Das Zeichen ^
entspricht dem Zeilenanfang, während das Zeichen .
Zeichen stimmt mit jedem einzelnen Zeichen überein.
Der Befehl sed
entfernt das erste Zeichen der Zeichenkette, den Buchstaben W
.
Die Ausgabe des Befehls sed
wird dann in der Variablen new_string
gespeichert, und wir verwenden den Befehl echo
, um den geänderten String auszugeben. Die Ausgabe des Codes sollte The modified string is: elcome
sein.
Verwenden Sie den Befehl cut
, um das erste Zeichen aus der Zeichenfolge in Bash zu entfernen
Eine andere Bash-Methode zum Entfernen des ersten Zeichens aus einer Zeichenfolge ist die Verwendung des Befehls cut
, mit dem wir eine bestimmte Anzahl von Zeichen aus einer Zeichenfolge extrahieren können. Der Befehl cut
nimmt einen String als Eingabe und gibt nur die angegebenen Zeichen aus.
Um das erste Zeichen eines Strings mit dem Befehl cut
zu entfernen, können wir mit der Option -c
die zu extrahierenden Zeichenpositionen angeben. Nehmen wir zum Beispiel an, wir haben dieselbe my_string
-Variable, die das Wort Hallo
enthält, und wir möchten das erste Zeichen (den Buchstaben H
) entfernen. Wir können den Befehl cut
verwenden, um dies zu erreichen:
my_string="Hello"
new_string=$(echo "$my_string" | cut -c 2-)
echo "The modified string is: $new_string"
Ausgang:
The modified string is: ello
Im obigen Code verwenden wir den Befehl cut
mit der Option -c
, um die Zeichen von der zweiten Position (2
) bis zum Ende der Zeichenfolge (-
) zu extrahieren. Das bedeutet, dass der cut
-Befehl das erste Zeichen des Strings entfernt, in diesem Fall der Buchstabe H
.
Die Ausgabe des cut
-Befehls wird dann in der new_string
-Variable gespeichert, und wir verwenden den echo
-Befehl, um den geänderten String auszugeben. Die Ausgabe des Codes sollte “The Modified String is: ello” lauten.
Verwenden Sie den Parameter substring
, um das erste Zeichen aus der Zeichenfolge in Bash zu entfernen
Schließlich können wir in Bash mit der Parametererweiterung substring
das erste Zeichen eines Strings entfernen. Diese spezielle Syntax ermöglicht es uns, String-Manipulationsoperationen an Variablen direkt im Bash-Skript durchzuführen, ohne externe Befehle wie sed
oder cut
zu verwenden.
Um das erste Zeichen eines Strings mit der Parametererweiterung substring
zu entfernen, können wir die Syntax ${string:position}
verwenden, wobei string
die Variable ist, die den String enthält, und position
die Startposition von ist der zu extrahierende Teilstring. Nehmen wir zum Beispiel an, wir haben dieselbe Variable my_string
, die das Wort Hallo
enthält, und wir möchten das erste Zeichen (den Buchstaben H
) entfernen. Dazu können wir die Parametererweiterung substring
verwenden:
my_string="Hello"
new_string=${my_string:1}
echo "The modified string is: $new_string"
Ausgang:
The modified string is: ello
Im obigen Code verwenden wir die Syntax ${my_string:1}
, um die Teilzeichenfolge ab der zweiten Position (1
) der Variablen my_string
zu extrahieren. Das erste Zeichen (der Buchstabe H
) wird aus der Zeichenfolge entfernt.
Die Ausgabe der Parametererweiterung substring
wird dann in der Variablen new_string
gespeichert, und wir verwenden den Befehl echo
, um die geänderte Zeichenfolge auszugeben. Die Ausgabe des Codes sollte The modified string is: ello
sein.
Zusammenfassend lässt sich sagen, dass es mehrere Möglichkeiten gibt, das erste Zeichen eines Strings in Bash zu entfernen, z. B. mit dem Befehl sed
, dem Befehl cut
oder der Parametererweiterung substring
. Jede dieser Methoden hat ihre Vor- und Nachteile, und die beste Wahl wird es tun
Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.
LinkedIn