Als Linux -Benutzer interagieren wir regelmäßig mit den Textdateien. Eines der gängigen Operationen, die wir in diesen Dateien ausführen, ist. Linux liefertFür Textfilterung, wie z.AnwesendAnwesendAnwesendund die Liste geht weiter.
In diesem Leitfaden werden wir jedoch ein weiteres Textfilter-Dienstprogramm namens diskutierenschneiden, mit der verwendet wird, um einen bestimmten Abschnitt aus der Eingangslinie zu entfernen. Der Cut -Befehl führt die Filterung basierend auf der Byte -Position, dem Zeichen, dem Feld und dem Grenzwert durch.
In diesem Anfänger werden wir über die erfahrenBefehl schneidenmit Beispielen in der Befehlszeile der Linux. Nach dieser Anleitung können Benutzer die Befehlszeile der Linux in der Lage sein, den Cut-Befehl effizient in ihrem täglichen Leben zu verwenden.
Befehlssyntax ausschneiden
Die Syntax derBefehl schneidenist genau wie jeder andere:
$ cut <OPTIONS>... [FILE-1] [FILE-2] ...
In der obigen Syntax die Winkelhalterung(<>)
repräsentiert die obligatorischen Argumente, während die quadratische Klammer([])
repräsentiert die optionalen Parameter.
Jetzt, da wir mit der Syntax der vertraut sindBefehl schneiden. Lassen Sie uns als Beispiel eine Beispieldatei als Beispiel erstellen:
$ cat file.txt

1. Drucken Sie das erste Byte der Datei
DerschneidenDer Befehl ermöglicht es uns, den Text basierend auf der Byte -Position mit dem zu extrahieren-b
Option.
Verwenden wir den folgenden Befehl, um das erste Byte aus jeder Zeile der Datei zu extrahieren:
$ cut -b 1 file.txt

In diesem Beispiel können wir sehen, dass dieschneidenDer Befehl zeigt nur den ersten Charakter, da alle Zeichen ein Byte lang sind.
2. Drucken Sie mehrere Dateien Bytes
Im vorherigen Beispiel haben wir gesehen, wie ein einzelnes Byte aus der Datei ausgewählt werden kann. Mit dem Befehl Cut können wir jedoch auch mehrere Bytes über das Komma auswählen.
Verwenden wir den folgenden Befehl, um die ersten vier Bytes aus der Datei auszuwählen:
$ cut -b 1,2,3,4 file.txt

In diesem Beispiel haben wir die aufeinanderfolgenden Bytes ausgewählt, das ist jedoch nicht obligatorisch. Wir können eine beliebige gültige Byteposition mit der verwendenschneidenBefehl.
3. Drucken Sie eine Reihe von Dateien Bytes
Im vorherigen Beispiel haben wir Kommas verwendet, um aufeinanderfolgende Bytes auszuwählen. Dieser Ansatz ist jedoch nicht geeignet, wenn wir eine große Anzahl von Bytes nacheinander auswählen möchten. In solchen Fällen können wir den Bindestrich verwenden(-)
Um den Bytebereich anzugeben.
Um dies zu verstehen, verwenden wir die1-12Als Byte -Bereich, um die ersten zwölf Bytes aus jeder Zeile auszuwählen:
$ cut -b 1-12 file.txt
In ähnlicher Weise können wir auch einen Byte -Bereich aus der Mitte auswählen. Der folgende Befehl wählt beispielsweise Bytes aus Spaltennummern 17 bis 30 aus:
$ cut -b 17-30 file.txt

4. DRUCKFORMIFIEREN SIE START BYTE -POSITION DER DATEI
Manchmal wollen wir den gesamten Text aus einer bestimmten Byteposition extrahieren. In solchen Fällen können wir die End -Byte -Position weglassen.
Zum Beispiel können wir den folgenden Befehl verwenden, um alle Bytes ab Position 17 auszudrucken:
$ cut -b 17- file.txt

Im obigen Befehl repräsentiert 17 die Start -Byte -Position, während der Bindestrich(-)
repräsentiert das Ende der Linie.
5. DRUCKENDE ENGEGEBENSPOBLEINE DER SCHLAFT
In ähnlicher Weise können wir auch nur die End -Byte -Position angeben. Zum Beispiel druckt der folgende Befehl alle Bytes vom Beginn der Zeile bis zur 12. Spalte:
$ cut -b -12 file.txt

Im obigen Befehl der Bindestrich(-)
repräsentiert den Beginn der Linie, während 12 die End -Byte -Position darstellt.
6. Erstes Byte durch Charakterposition schneiden
In den letzten Abschnitten haben wir gesehen, wie man eine Textentnahme basierend auf der Byte -Position ausführt. Lassen Sie uns nun sehen, wie die Textextraktion nach Charakterposition durchführt.
Um dies zu erreichen, können wir die verwenden-c
Option, das erste Byte aus der folgenden Multi-Byte-Zeichenfolge zu schneiden:
$ echo école | cut -b 1 �
In der obigen Ausgabe können wir sehen, dass der Cut -Befehl ein Fragezeichen anstelle des Zeichens zeigté
. Dies geschieht, weil wir versuchen, das erste Byte aus dem Multi-Byte-Charakter zu drucken.
Lassen Sie uns nun das verwenden-c
Option, denselben Multi-Byte-Charakter zu schneiden und das Ergebnis zu beobachten:
$ echo école | cut -c 1 é
In der obigen Ausgabe können wir sehen, dass der Cut -Befehl nun die erwartete Ausgabe anzeigt.
Es ist wichtig zu beachten, dass nicht alle Versionen der Cut-Befehle die Multi-Byte-Zeichen unterstützen. Zum Beispiel,Unterstützen Sie keine Multi-Byte-Charaktere.
Um dies zu verstehen, führen wir den gleichen Befehl auf dem ausLinux Mintdas abgeleitet ist vonUbuntu:

Hier können wir das sehen, dieschneidenDer Befehl behandelt sowohl Multi-Byte-Zeichen als auch Single-Byte-Zeichen gleich. Daher erzeugt es nicht die erwartete Ausgabe.
7. Schneiden Sie eine Zeichenfolge durch den Trennzeichen unter Linux
Standardmäßig ist dieschneidenBefehl verwendet aTABCharakter als Trennzeichen. Wir können dieses Standardverhalten jedoch mit dem überschreiben-d
Option.
Oftmals die-d
Option wird in Kombination mit dem verwendet-f
Option, mit der ein bestimmtes Feld ausgewählt wird.
Um dies zu verstehen, verwenden wir den Space -Charakter als Trennzeichen und drucken Sie die ersten beiden Felder mit der-f
Option:
$ cut -d " " -f 1,2 file.txt

Im obigen Beispiel haben wir das Komma mit dem verwendet-f
Option zur Auswahl mehrerer Felder.
8. Drucken Sie alle Bytes oder Zeichen außer ausgewählten
Manchmal möchten wir alle Charaktere mit Ausnahme einigeriger drucken. In solchen Fällen können wir die verwenden--complement
Option. Wie der Name schon sagt, druckt diese Option alle Spalten mit Ausnahme der angegebenen.
$ cut -c 1 --complement file.txt

In der obigen Ausgabe können wir sehen, dass die--complement
Die Option druckt alle Zeichen außer dem ersten Zeichen.
Es ist wichtig zu beachten, dass wir in diesem Beispiel Kommas verwendet haben, um mehrere Felder auszuwählen. Wir können jedoch auch die anderen unterstützten Bereiche verwenden. Wir können uns auf die ersten Beispiele dieses Tutorials beziehen, um mehr über die Bereiche zu erfahren.
Abschluss
In diesem Anfängerleitfaden haben wir die praktischen Beispiele dessen erörtertschneidenBefehl mit Textfilterung basierend auf der Byteposition, der Zeichenposition und dem Trennzeichen.
Kennen Sie ein anderes bestes Beispiel für den Cut -Befehl in Linux? Lassen Sie uns Ihre Ansichten in den Kommentaren unten wissen.