GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux-Split-Befehl mit Beispielen

Einführung

Das Linux split Der Befehl zerlegt Dateien in kleinere Teile und wird zum Analysieren großer Textdateien mit vielen Zeilen verwendet. Während jede aufgeteilte Datei standardmäßig 1000 Zeilen zählt, ist die Größe änderbar.

In diesem Handbuch erfahren Sie, wie Sie Linux split verwenden Befehl mit Beispielen.

Anforderungen

  • Zugriff auf die Terminalleitung.
  • Eine große Textdatei (dieses Tutorial verwendet large_text-, small_text- und tiny_text-Dateien).

Linux-Split-Befehlssyntax

Die grundlegenden split Syntax ist:

split [options] [file] [prefix]

Die split Der Befehl kann nicht ausgeführt werden, ohne die Zieldatei einzuschließen. Die Angabe des Präfixes ist optional. Wenn kein Präfix angegeben ist, split verwendet standardmäßig x als Präfix, wobei erstellte Dateien wie folgt benannt werden:xaa ,xab , xac usw.

Linux-Split-Befehlsoptionen

Die split Der Befehl unterstützt viele Optionen. Die häufigste split Befehlsoptionen sind:

Option Beschreibung
-a Suffixlänge festlegen.
-b Legt die Größe pro Ausgabedatei fest.
-C Legt die maximale Größe pro Ausgabedatei fest.
-d Ändert Standard-Suffixe in numerische Werte.
-e Vermeidet das Erstellen leerer Ausgabedateien.
-l Erzeugt Dateien mit einer bestimmten Anzahl von Ausgabezeilen.
-n Erzeugt eine bestimmte Anzahl von Ausgabedateien.
--verbose Zeigt eine detaillierte Ausgabe an.

Linux-Split-Befehlsbeispiele

Die split Der Befehl ermöglicht es Benutzern, große Dateien unter Linux aufzuteilen und damit zu arbeiten. Der Befehl wird in der Praxis häufig verwendet, und 13 häufige Anwendungsfälle werden im Folgenden erläutert.

Dateien teilen

Die grundlegende Verwendung von split besteht darin, große Dateien in kleinere 1000-Zeilen-Blöcke zu unterteilen. Teilen Sie beispielsweise large_text auf Datei und überprüfen Sie die Ausgabe mit ls:

split large_text
ls

Die ls zeigt 13 neue Dateien an, die von xaa reichen anxam . Überprüfen Sie die Zeilenanzahl für jede Datei, indem Sie wc mit -l verwenden Flagge:

wc -l large_text xa*

Die Zieldatei large_text , ist 13000 Zeilen lang. Die split Befehl erstellt 13 Dateien mit jeweils 1000 Zeilen. Wenn die Zeilenanzahl der Zieldatei nicht durch 1000 teilbar ist, split zählt 1000 Zeilen pro Datei mit Ausnahme der letzten. Die letzte Datei hat weniger Zeilen.

Zum Beispiel eine Datei kleinerer_text in kleineres_verzeichnis hat 12934 Zeilen:

Teilen Sie kleineren_Text und verwenden Sie ls um das Ergebnis zu bestätigen:

split smaller_text
ls

Sobald die Zieldatei aufgeteilt ist, führen Sie wc -l aus nochmal:

wc -l smaller_text xa*

Die Ausgabe zeigt, dass die letzte Datei 934 Zeilen hat, im Gegensatz zu den anderen 12, die jeweils 1000 Zeilen haben.

Verwenden Sie die ausführliche Option

Die split Befehl gibt keine Ausgabe aus. Verwenden Sie --verbose zu verfolgen, wie split funktioniert. Ausführen von split mit --verbose zeigt weitere Details:

split large_ text --verbose

Zeilenzahl pro Datei festlegen

Um die standardmäßige 1000-Zeilen-Regel zu umgehen, verwenden Sie -l mit split kennzeichnen . Die split -l Mit dem Befehl können Benutzer die Anzahl der Zeilen pro Datei festlegen.

Führen Sie beispielsweise split -l2500 aus um Dateien mit jeweils 2500 Zeilen zu erstellen und die Zeilenanzahl mit wc zu überprüfen :

split -l2500 large_text
wc -l large_text xa*

Der Befehl erstellt sechs neue Dateien. Dateien xaa zu xae haben jeweils 2500 Zeilen, während die Datei xaf hat 500 Zeilen, insgesamt 13000.

Der split -l Der Befehl kann auch Dateien mit weniger als 1000 Zeilen erstellen. Beispiel:tiny_text Datei hat 2693 Zeilen:

Teilen Sie den Text in Dateien mit 500 Zeilen auf mit:

split -l500 tiny_text

Der Befehl druckt fünf 500-Zeilen-Dateien und eine 193-Zeilen-Datei.

Dateigröße wählen

Teilen Sie Dateien basierend auf ihrer Größe mit split -b . Der Befehl erstellt Dateien basierend auf der Nummer (n ) von:

  • Bytes mit split -bn .
  • Kilobyte mit split -bnK .
  • Megabyte mit split -bnM .
  • Gigabyte mit split -bnG .

Erstellen Sie beispielsweise 1500-KB-Dateien aus large_text mit:

split -b1500K large_text --verbose

Der --verbose Option zeigt, dass split -bnK sechs Dateien erstellt. Verwenden Sie zum Überprüfen der Dateigröße wc -c :

wc -c large_text xa*

Die Ausgabe zeigt, dass fünf Dateien jeweils 1 536 000 Byte groß sind und die sechste 56 957 Byte lang ist.

Maximale Größe angeben

Verwenden Sie -C um eine maximale Größe pro Ausgabedatei festzulegen. Teilen Sie beispielsweise large_text und stellen Sie die Ausgabegröße auf 2 MB ein mit:

split large_text -C 2MB

Der wc -c Befehl zeigt, dass split vier neue Dateien erstellt hat und dass die ersten drei ungefähr 2 MB groß sind, während die vierte kleiner ist.

Anzahl der Ausgabedateien festlegen

Verwenden Sie -n mit split um die Anzahl der Ausgabedateien zu bestimmen. Teilen Sie beispielsweise large_text in zehn Teile mit:

split large_text -n 10

Teilen Sie eine Datei am Ende einer Zeile

Noch ein -n Verwendung ist das Aufteilen einer Datei am Ende einer vollständigen Zeile. Kombinieren Sie dazu -n mit l . Teilen Sie beispielsweise die Datei large_text in zehn Dateien und endet mit einer vollständigen Zeile mit:

split -n l/10 large_text

Der ls Befehl zeigt zehn neu erstellte Dateien. Führen Sie cat aus auf jede Datei, um zu überprüfen, ob die Datei auf einer vollständigen Zeile endet:

Nur eine bestimmte Ausgabedatei anzeigen

Der split Der Befehl erstellt standardmäßig so viele Dateien wie nötig, um die gesamte Quelldatei abzudecken. Verwenden Sie jedoch -n mit split teilt eine Datei, zeigt aber nur die angegebenen Teile an. Das Flag erstellt auch keine Ausgabedateien, sondern gibt die Ausgabe an das Terminal aus.

Teilen Sie beispielsweise tiny_text in 100 Teile, aber nur den ersten anzeigen mit:

split -n 1/100 tiny_text

Der Befehl gibt die erste geteilte Datei an die Standardausgabe aus, ohne neue Dateien zu erstellen.

Suffixlänge festlegen

Der split Der Befehl erstellt Dateien mit einem Standard-Suffix aus zwei Buchstaben. Ändern Sie die Länge, indem Sie -a hinzufügen Flagge zu teilen. Um beispielsweise das Suffix 3 Zeichen lang zu machen, geben Sie Folgendes ein:

split -a 3 large_text

Suffix ändern

Verwenden Sie split um Dateien mit unterschiedlichen Suffixen zu erstellen. Teilen Sie beispielsweise large_text in 2500-Zeilen-Dateien mit numerischen Suffixen:

split -l2500 -d large_text

Die Ausgabe zeigt sechs Dateien mit nummerierten Suffixen, die mit -d erstellt wurden Flagge. Der -l2500 flag teilt den large_text Datei in sechs 2500-Zeilen-Dateien.

Präfix ändern

Der split Der Befehl erstellt auch Ausgabedateien mit anpassbaren Präfixen. Die Syntax für den Befehl lautet:

split [file] [prefix]

Teilen Sie beispielsweise large_text in zehn Dateien namens part00 zu part09 mit:

split -d large_text part -n 10

Das Präfix ändert sich von x zu Teil und endet mit Zahlen aufgrund des -d Flagge. Die -n Flag teilt die Datei in zehn Teile.

Dateien mit Nullgröße auslassen

Beim Aufteilen von Dateien werden einige Ausgaben Dateien mit der Größe Null zurückgeben. Um Ausgabedateien der Größe Null zu verhindern, verwenden Sie split mit dem -e Flagge. Teilen Sie beispielsweise xaa auf Datei aus dem tiny_directory in 15 Dateien, mit einem numerischen Suffix, um sicherzustellen, dass Dateien mit der Größe Null weggelassen werden:

split -n15 -e -d xaa

Überprüfen Sie die Dateigröße mit wc -c :

wc -c x0* x1*

Mit x0* und x1* als Suchbegriffe sorgt für wc -c gibt die Größe aller Dateien im Verzeichnis aus, beginnend mit Zahlen.

Getrennte Dateien erneut verbinden

Während split Dateien nicht wieder zusammenfügen können, gibt es eine alternative Option - den Linux-cat-Befehl. Wird verwendet, um den Inhalt verschiedener Dateien anzuzeigen, cat verbindet auch geteilte Dateien wieder zu einem neuen vollständigen Dokument.

Beispiel:large_text ist in zehn Dateien aufgeteilt:

Alle Ausgabedateien beginnen mit x . Wenden Sie cat an zu allen Elementen, die mit x beginnen um sie zusammenzuführen.

Jedoch cat gibt das Ergebnis auf der Standardausgabe aus. Um die Dateien zu einer neuen Datei zusammenzuführen, verwenden Sie > mit dem neuen Dateinamen:

cat x* > new_large_text

Ausführen von wc -c zeigt, dass large_text undnew_large_text sind gleich groß.

Fazit

Nachdem Sie diesen Artikel gelesen haben, wissen Sie, wie Sie Linux split verwenden Befehl zum Arbeiten mit großen Dokumenten. Als Nächstes erfahren Sie, wie Sie Dateien mit dem SCP-Befehl sicher kopieren und übertragen.


Linux
  1. wc Linux-Befehl mit Beispielen

  2. Linux-Sortierungsbefehl mit Beispielen

  3. Linux Tee-Befehl mit Beispielen

  4. Linux-Kopfbefehl mit Beispielen

  5. JQ-Befehl in Linux mit Beispielen

Linux-CD-Befehl mit Beispielen

Linux-Uhrbefehl mit Beispielen

Wartebefehl in Linux mit Beispielen

Linux-Exportbefehl mit Beispielen

Neustartbefehl unter Linux mit Beispielen

Linux-IP-Befehl mit Beispielen