Erfahren Sie, wie Sie eine große Datei mit dem Befehl „split“ unter Linux in mehrere kleinere Dateien aufteilen.
Linux bietet eine breite Palette von Befehlen zur Textmanipulation und -verarbeitung, einschließlich des Split-Befehls. Mit Split können Sie große Dateien ganz einfach in kleinere aufteilen oder bestimmte Teile einer Datei anhand bestimmter Kriterien extrahieren.
Sehen wir uns an, wie Sie mit dem Befehl „split“ Dateien unter Linux teilen. Unabhängig davon, ob Sie bestimmte Teile einer großen Datei extrahieren oder eine Datei in kleinere Teile aufteilen müssen, kann Ihnen der Befehl „Teilen“ dabei helfen, Ihre Ziele problemlos zu erreichen.
Was ist der Split-Befehl?
Der Split-Befehl ist ein beliebtes Linux-Befehlszeilentool, das von Torbjorn Granlund und Richard M. entwickelt wurde. Stallmann. Wie der Name schon sagt, wird der Split-Befehl verwendet, um eine Datei in kleinere Unterdateien aufzuteilen.
Dieser Befehl ist nützlich für die Verwaltung großer Dateien oder beim Übertragen von Dateien über Netzwerke mit begrenzter Bandbreite. Indem Sie eine große Datei in kleinere Teile aufteilen, können Sie die Datenmenge reduzieren, die zu einem bestimmten Zeitpunkt übertragen oder gespeichert werden muss. Sie können den Split-Befehl auch umkehren, um mehrere Dateien zu einer zusammenzufassen.
Die Split-Befehlssyntax
Die grundlegende Syntax des Split-Befehls lautet:
teilen [OPTION]... [DATEI] [PRÄFIX]
- [MÖGLICHKEIT]: Der Befehl „Teilen“ verfügt über verschiedene Optionen, um zu entscheiden, wie die Datei geteilt werden soll, sowie über andere spezifische Funktionen, die Sie möglicherweise hinzufügen möchten.
- [DATEI]: Dies ist der Pfad zu der Datei, die Sie teilen möchten.
- [PRÄFIX]: Dies bezieht sich auf das Präfix der Unterdateien.
So verwenden Sie den Split-Befehl
Mit dem Befehl „Split“ können Sie eine große Datei nach Größe oder Länge in kleinere Dateien aufteilen. Sie können sogar die gewünschte Anzahl kleinerer Dateien auswählen.
Zur Demonstration verwenden wir eine Textdatei mit dem Namen große Datei.txt. Bitte wählen Sie für dieses Tutorial eine Textdatei mit mehreren Zeilen und einer relativ großen Größe. Wenn Sie das nicht haben, können Sie es verwenden ein Linux-Texteditor oder den Befehl cat, um einen großen Text einzufügen und zu speichern.
Teilen Sie große Dateien basierend auf der Anzahl der Zeilen auf
Mit dem Befehl „split“ können Sie eine große Datei basierend auf einer bestimmten Anzahl von Zeilen pro Datei in kleinere Dateien aufteilen. Hier ist die Syntax:
split -l [Anzahl der Zeilen] [Eingabedatei] [Präfix der Ausgabedatei]
Beispielsweise möchten Sie möglicherweise eine Datei mit 210 Zeilen in Dateien mit jeweils 50 Zeilen aufteilen. Sie würden fünf kleinere Dateien erhalten. Die ersten vier Dateien hätten jeweils 50 Zeilen und die fünfte Datei würde nur 10 Zeilen enthalten.
Um eine Datei mit dem Namen „largefile.txt“ in kleinere Dateien mit jeweils 100 Zeilen aufzuteilen, führen Sie diesen Befehl aus:
split -l 100 große Datei.txt kleine Datei
Listen Sie den Inhalt des Verzeichnisses mit auf der ls-Befehl, und Sie würden die geteilten Dateien sehen.
Teilen Sie große Dateien nach Größe auf
Sie können den Befehl „split“ auch verwenden, um eine große Datei basierend auf einer bestimmten Dateigröße in kleinere Dateien aufzuteilen. Hier ist die grundlegende Syntax:
split -b [Größe in Bytes] [Eingabedatei] [Präfix der Ausgabedatei]
Teilen Sie „largefile.txt“ in kleinere Dateien mit jeweils 300 Byte auf, indem Sie diesen Befehl ausführen:
split -b 300 große Datei.txt kleine Datei
Hier ist das Ergebnis:
Teilen Sie eine große Datei in eine bestimmte Anzahl von Dateien auf
Sie können eine Datei auch in eine feste Anzahl von Dateien aufteilen, unabhängig von der Anzahl der Dateien und den darin enthaltenen Bytes. Sie tun dies mit dem -N Möglichkeit. Hier ist die Syntax:
split -n [Anzahl der Dateien] [Eingabedatei] [Präfix der Ausgabedatei]
Um eine große Datei in fünf Teile aufzuteilen, führen Sie diesen Befehl aus:
split -n 5 große Datei.txt kleine Datei
Das Ergebnis sollte so aussehen:
Ändern Sie die Suffixlänge der geteilten Dateien
Wie Sie vielleicht bemerkt haben, beträgt die Standardlänge der an den Ausgabedateinamen angehängten Suffixe zwei. Zum Beispiel kleine Dateiaa, kleine Dateiab, kleine Dateiac, usw.
Um die Länge des Suffixes zu ändern, verwenden Sie die -A Möglichkeit. Hier ist die Syntax zum Ändern der Suffixlänge:
split -a [Länge des Suffixes] [Eingabedatei] [Präfix der Ausgabedatei]
Sie können diese Suffixlängenoption zusammen mit anderen Split-Befehlen verwenden. Um die Datei „largefile.txt“ in 10 Teile mit einer Suffixlänge von 4 aufzuteilen, führen Sie diesen Befehl aus:
split -a 4 -n 10 große Datei.txt kleine Datei
Wenn Sie den Inhalt des Verzeichnisses auflisten, sollte die Ausgabe wie folgt aussehen:
Mehrere Dateien mit Katze zusammenführen
Die gute Nachricht ist, dass Sie geteilte Dateien jederzeit wieder zusammenführen können, um die Originaldatei zu erstellen. Um geteilte Dateien wieder in die Originaldatei zusammenzuführen, Verwenden Sie den Befehl cat. Hier ist die Syntax dafür:
cat [Dateien aufteilen] > [Ausgabedatei]
Wenn Sie den Befehl cat zum Zusammenführen geteilter Dateien verwenden, ist es wichtig, die richtige Reihenfolge der geteilten Dateien anzugeben.
Der Befehl cat verkettet die Dateien einfach in der angegebenen Reihenfolge. Wenn die Dateien also nicht in der richtigen Reihenfolge sind, wird die zusammengeführte Datei beschädigt.
In einem Szenario, in dem Sie viele geteilte Dateien haben, beispielsweise hundert geteilte Dateien, wäre es umständlich, jede Datei nacheinander und in der richtigen Reihenfolge einzugeben.
Hier kommt das Präfix ins Spiel. Durch einfaches Hinzufügen eines Sternchens (*) können Sie alle Dateien zusammenführen, die mit diesem Präfix beginnen.
cat-Präfix* > [Ausgabedatei]
Hier ist ein Beispielbefehl, der geteilte Dateien zusammenführt smallfileaa, smallfileab, smallfileac, Und smallfilead in eine einzelne Datei mit dem Namen bigfile.txt:
cat smallfile* > bigfile.txt
Dieser Befehl verkettet den Inhalt aller geteilten Dateien, die dem Muster entsprechen kleine Datei* und leiten Sie die Ausgabe in eine neue Datei namens bigfile.txt um. Außerdem werden die geteilten Dateien in natürlicher Reihenfolge basierend auf ihrem Namen aufgelistet, was die richtige Reihenfolge für das Zusammenführen sein sollte.
Der Split-Befehl ist nur eines der vielen Tools, die Linux bereitstellt, um Ihnen bei der effizienten Verwaltung großer Dateien zu helfen, indem Sie sie in kleinere, besser verwaltbare Teile aufteilen.
Durch die Beherrschung der Linux-Textverarbeitungsbefehle können Sie Zeit und Ressourcen sparen und effizienter werden.