So extrahieren Sie einen Teil einer Zeichenfolge mithilfe der Bash-Befehle zum Ausschneiden und Teilen

Beim Programmieren kommt es häufig vor, dass wir einen bestimmten Teil einer Zeichenfolge aus einem größeren Text extrahieren müssen. Dies kann mit verschiedenen Techniken und Tools erfolgen, und eine der beliebtesten Methoden ist die Verwendung von Bash/Cut/Split-Befehlen unter Linux/Unix.

Diese Befehle sind leistungsstark und vielseitig und können verwendet werden, um bestimmte Teile einer Zeichenfolge basierend auf verschiedenen Trennzeichen wie Leerzeichen, Kommas und Semikolons zu extrahieren. In diesem Artikel erfahren Sie, wie Sie Teile einer Zeichenfolge mithilfe von Bash-/Cut-/Split-Befehlen extrahieren, und stellen praktische Beispiele bereit, damit Sie besser verstehen, wie Sie diese effektiv nutzen können.

Der Schnittbefehl

Der Befehl „cut“ wird verwendet, um Abschnitte aus jeder Zeile einer Datei oder Zeichenfolge zu extrahieren. Es handelt sich um einen einfachen und leistungsstarken Befehl, der Felder basierend auf einem Trennzeichen oder einem bestimmten Zeichen extrahieren kann. Die Syntax für den Schnittbefehl lautet wie folgt:

schneiden -d [delimiter] -F [field] [filename]

Hier gibt die Option -d das in der Eingabedatei verwendete Trennzeichen an und die Option -f gibt die zu extrahierenden Felder an. Das Argument Dateiname ist die zu verarbeitende Eingabedatei. Angenommen, wir haben eine Datei namens testfile.txt mit folgendem Inhalt:

BMW,M5

Lexus,LS470

VOLVO,X70

Wenn wir das zweite Feld aus jeder Zeile extrahieren möchten, können wir das folgende Shell-Skript verwenden:

#!/bin/bash

cat testfile.txt

echo „Hier ist der extrahierte Teil:“

cut -d ‚,‘ -f 2 testfile.txt

Unten sehen Sie die Ausgabe des oben angegebenen Codes, der die Datei und ihren extrahierten Teil anzeigt:

Der geteilte Befehl

Der Befehl „split“ wird verwendet, um eine Zeichenfolge basierend auf einem Trennzeichen in ein Array von Teilzeichenfolgen aufzuteilen. Es handelt sich um einen in Bash integrierten Befehl, der zum Extrahieren eines Teils einer Zeichenfolge verwendet werden kann. Die Syntax für den Split-Befehl lautet wie folgt:

IFS=[delimiter] lesen Sie -ra [array_name] <<< "$[string]"

Hier gibt die IFS-Variable das in der Zeichenfolge verwendete Trennzeichen an, der Lesebefehl liest die Eingabe und teilt sie in ein Array auf, und der Operator <<< wird verwendet, um die Zeichenfolge als Eingabe zu übergeben.

Angenommen, wir haben eine Zeichenfolge namens „BMW, M5“. Wenn wir das zweite Feld extrahieren möchten, können wir das folgende Bash-Skript verwenden:

#!/bin/bash

cat testfile.txt

echo „Hier ist der extrahierte Teil:“

IFS=‘,‘ read -ra Felder <<< "BMW,M5"echo ${fields[1]}

Der Bash-Split-Befehl kann auch verwendet werden, um mehrere Felder aus einer Zeichenfolge zu extrahieren, indem mehrere Variablen im Lesebefehl verwendet werden.

Abschluss

Bash bietet mehrere Methoden zum Extrahieren eines Teils einer Zeichenfolge, einschließlich der Befehle „cut“ und „split“. Der Befehl „cut“ kann zum Extrahieren von Feldern basierend auf einem Trennzeichen oder einem bestimmten Zeichen verwendet werden, während der Befehl „split“ verwendet werden kann, um eine Zeichenfolge basierend auf einem Trennzeichen in ein Array von Teilzeichenfolgen aufzuteilen. Zu verstehen, wie man einen Teil einer Zeichenfolge extrahiert, ist eine wichtige Fähigkeit für jeden, der mit Bash-Skripten arbeitet.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen