Holen Sie sich die Länge der Zeichenfolge in Bash

Numan Shafi 15 Februar 2024
  1. Saitenlänge und grundlegende Notationen
  2. Verwenden Sie den #-Operator, um die Zeichenfolgenlänge in Bash zu berechnen
  3. Verwenden Sie den Befehl expr, um die Zeichenfolgenlänge in Bash zu berechnen
  4. Verwenden Sie den Befehl awk, um die Zeichenfolgenlänge in Bash zu berechnen
  5. Verwenden Sie den Befehl wc, um die Zeichenfolgenlänge in Bash zu berechnen
  6. Berechnen Sie die Zeichenlänge einer Datei
Holen Sie sich die Länge der Zeichenfolge in Bash

In Programmiersprachen spielt die Länge bzw. Größe des Datentyps eine wichtige Rolle. Es hilft beim Durchlaufen von Listen und erleichtert das Extrahieren nützlicher Informationen.

Die Länge ist besonders wichtig, um Aufgaben auszuführen, bei denen die gesamte Saite durchlaufen werden muss. Daher werden wir unter Berücksichtigung der Wichtigkeit der Länge oder Größe jedes Datentyps verschiedene Methoden zur Berechnung der Zeichenfolgenlänge kennenlernen.

Saitenlänge und grundlegende Notationen

Ein String ist die Folge der verschiedenen char, die die Leerzeichen enthalten kann. In Bash ist die Länge der Zeichenfolge die Gesamtzahl der Zeichen in dieser Zeichenfolge.

Beispielsweise enthält der String "Hello World" zehn char und ein Leerzeichen. Daher ist seine Länge elf.

Die meisten Skript- und Programmiersprachen verfügen über integrierte oder Bibliotheksfunktionen zum Ermitteln der Länge der Zeichenfolge. Ebenso gibt es viele Möglichkeiten, Bash-Befehle zu manipulieren, um die Zeichenfolgenlänge in Bash zu berechnen.

Verwenden Sie den #-Operator, um die Zeichenfolgenlänge in Bash zu berechnen

Wir können den Operator # verwenden, um die Länge des Strings zu berechnen. Der folgende Code zeigt die Syntax zum Abrufen der Länge einer Zeichenfolge mit dem Operator #.

${#your_var}

Zuerst haben wir die Variable, die den String enthält, mit den geschweiften Klammern umschlossen und dem Operator # die Variable vorangestellt.

Der Operator # spielt eine wesentliche Rolle beim Drucken der Länge der Zeichenfolge. Wenn # nicht verwendet wird, druckt der Code die gesamte Zeichenfolge, daher ist das Hinzufügen zur Variablen unerlässlich.

Darüber hinaus behandelt das äußere $-Zeichen die Stringlänge als Variable und gibt sie mit dem echo-Befehl auf dem Bildschirm aus. Der folgende Code zeigt die Längenberechnung des Strings mit dem #.

var="hello world"
echo ${var}
echo ${#var}

Zeichenfolgenlänge mit Hash

In Zeile #1 erstellen wir die Variable namens var. Die Variable var kann eine beliebige Zeichenfolge aus dem Terminal- oder Dateistring enthalten.

Die zweite Zeile gibt den gesamten String mit dem $ und den geschweiften Klammern aus. In der letzten Zeile haben wir das Symbol # mit der Variablen verwendet und die Länge der Zeichenfolge auf der Befehlskonsole ausgegeben.

Verwenden Sie den Befehl expr, um die Zeichenfolgenlänge in Bash zu berechnen

Hier untersuchen wir die Berechnung der Länge des Strings mit dem Befehl expr. Der folgende Code zeigt die grundlegende Syntax zur Verwendung des Befehls expr.

`expr "$var1" : "$var2"`

Der Befehl expr benötigt zwei Parameter: vor und nach dem Vergleichsoperator :. Der Vergleichsoperator vergleicht zwei Zeichenketten auf gemeinsame Zeichen und gibt die Anzahl ähnlicher Zeichen zurück.

In var1 geben wir den String an, dessen Länge berechnet werden soll. Das var2 enthält einen regulären Ausdruck, der die Zeichenfolge einzeln analysiert, und der Vergleichsoperator kann die Anzahl jedes ähnlichen Zeichens berechnen.

Der folgende Code veranschaulicht ein Beispiel.

var="hello world"
echo `expr "$var" : ".*"`

Länge mit exp

Im obigen Code haben wir der Variablen var den String "hello world" zugewiesen. Das .* analysiert alle Zeichen des vorherigen Tokens (d. h. den Wert von var).

Daher gibt der Vergleichsoperator bei zwei gleichen Operanden die Gesamtzahl der Zeichen im ersten Operanden zurück.

Verwenden Sie den Befehl awk, um die Zeichenfolgenlänge in Bash zu berechnen

Lassen Sie uns die Stringlänge mit dem Befehl awk berechnen. Der Befehl awk ist eine Skriptsprache, die zur Datenbearbeitung und Berichterstellung verwendet wird.

Der folgende Code demonstriert die Längenberechnung des Strings mit dem Befehl awk.

var="hello world"
n1=`echo $var |awk '{print length}'`
echo $n1

Im obigen Code haben wir das eingebaute Attribut des awk- und des print-Befehls verwendet.

Der Befehl awk übernimmt die Eingabe des Strings aus der Variablen var mit der Pipe. Die Pipe sendet die Befehlsausgabe an die Eingabe nach der Pipe.

Zeile #3 gibt die Länge des Strings als Bestätigung aus.

Verwenden Sie den Befehl wc, um die Zeichenfolgenlänge in Bash zu berechnen

Jetzt untersuchen wir die Längenberechnung der Zeichenkette mit dem Befehl wc. Wir übergeben den String nur über die Pipe mit dem Flag -c oder -m an das wc und erhalten die gewünschte Ausgabe (also die Länge des Strings).

Die folgenden Bash-Befehle zeigen die Stringlänge mit dem Befehl wc an.

echo -n "$var" | wc -c

Oder:

echo -n "$var" | wc -m

Der obige Code zeigt die Längenberechnung des Strings mit zwei verschiedenen Flags des wc-Befehls.

Wenn wir nur den Befehl wc verwenden, gibt er mehr Informationen als die Länge der Zeichenfolge, die nicht erforderlich ist. Die Erwähnung des Flags nach dem Befehl wc ist also unvermeidlich.

Wir können beide Flags verwenden, -c oder -m. Beide geben die gleiche Ausgabe zurück.

Das folgende Snippet zeigt die Ausgabe des oben beschriebenen wc-Codes.

Länge mit dem WC

Berechnen Sie die Zeichenlänge einer Datei

Jetzt werden wir untersuchen, wie die Zeichenfolgenlänge aus der Datei berechnet wird. Wir erstellen die Datei mit dem Namen abc.txt und schreiben einen Text.

Dann lesen und drucken wir die Länge der Zeichenfolge aus der Datei.

Der folgende Code zeigt die Berechnung der Stringlänge aus der Datei.

touch abc.txt
echo "hello world">> abc.txt
cat abc.txt | wc -c

Der touch erstellt eine neue Datei abc.txt, in die wir mit einfacher I/O-Umleitung einen hello world-String schreiben. Der Befehl cat in der dritten Zeile zeigt den Inhalt von abc.txt an.

Die Pipe | macht die Ausgabe des Befehls cat zur Eingabe des Befehls wc. Daher zählt das wc die Wörter in dieser Ausgabe.

Verwandter Artikel - Bash String