Hier ist eine Frage von einem unserer regelmäßigen Leser Anu. Sie möchte wissen, wie man eine einzelne Datei basierend auf der Anzahl der Zeilen oder Zeilen in mehrere Dateien aufteilt. Unten ist die eigentliche Frage.
Ich habe eine Datei mit 15000 Zeilen. Ich würde gerne wissen, ob es in Linux einen Befehl gibt, um eine Datei in mehrere Dateien aufzuteilen, wobei jede Datei 1000 Zeilen enthält. Idealerweise brauche ich also 15 Dateien mit jeweils 1000 Zeilen.
Lösung:
Nun, Sie können split
verwenden Befehl unter Linux. Split ist ein nützliches Dienstprogramm, mit dem Sie große Dateien in kleinere Dateien aufteilen können. Beispielsweise kann eine Datei mit 15000 Zeilen in 15 Dateien mit jeweils 1000 Zeilen aufgeteilt werden.
$ split -a 2 -d -l 1000 content.txt split
Der obige Befehl teilt content.txt
Datei in mehrere Dateien (beginnend mit Dateiname split00
) und jeweils mit 1000 Zeilen oder weniger. Angenommen 15000 Zeilen in content.txt
erstellt 15 Dateien beginnend mit split00 to split14
.
Lassen Sie uns jetzt die Optionen verstehen.
-a 2 : means use a unique 2 character suffix for every file. E.g., 00 to 99 -d : means suffix will be a number. -l 1000: means split a file by line and store 1000 lines or less in each file.
Das ist es!