Menü Schließen

Debian – Dateien mit split in gleiche Teile aufteilen und zusammenfügen

Unix Shell

Unter den meisten Linux Distributionen gibt es den Befehl split. So auch unter Debian. Mit Hilfe von Split kann man recht einfach eine Datei in viele Stücke teilen um sie so z.B. besser zu transportieren..

Da die Hilfe / das Manual von split recht überschaubar ist, habe ich diese nachfolgend mal übernommen:

# man split


ÜBERSICHT
split [OPTION]... [EINGABE [PRÄFIX]]

BESCHREIBUNG
Stücke  fester  Größe  der EINGABE als PRÄFIXaa, PRÄFIXab, ... ausgeben; Vorgaben sind für die Größe 1000 Zeilen und für PRÄFIX »x«.
Ohne EINGABE oder wenn EINGABE »-« ist, Standardeingabe lesen.

Die obligatorischen Argumente für Optionen sind für deren Kurz- und Langform gleich.

-a, --suffix-length=N
Endungen der Länge N verwenden (Vorgabe 2)

-b, --bytes=GRÖSSE
Jeweils GRÖSSE Byte pro Ausgabedatei schreiben

-C, --line-bytes=GRÖSSE
Höchstens GRÖSSE Byte an Zeilen pro Ausgabedatei schreiben

-d, --numeric-suffixes
Numerische Endungen statt alphabetischer verwenden

-e, --elide-empty-files
Mit »-n« keine leeren Ausgabedateien erstellen

--filter=BEFEHL
BEFEHL in die Shell schreiben; Dateiname ist $FILE

-l, --lines=ZAHL
ZAHL Zeilen pro Ausgabedatei schreiben

-n, --number=TEILE
Erstellen von TEILE Ausgabedateien. Siehe unten.

-u, --unbuffered
Die Eingabe mit »-n r/...« sofort zur Ausgabe kopieren

--verbose
Vor dem Öffnen jeder Ausgabedatei eine Meldung ausgeben

--help Diese Hilfe anzeigen und beenden

--version
Versionsinformation anzeigen und beenden

GRÖSSE kann eine der folgenden Abkürzungen sein (oder eine Ganzzahl, die optional von einer der Abkürzungen gefolgt wird): KB  1000,
K 1024, MB 1000*1000, M 1024*1024 und so weiter für G, T, P, E, Z, Y.

TEILE können sein: N       in N Dateien teilen, basierend auf der Größe der Eingabe K/N     Ausgabe von K-tel von N zur Standardaus\u2010
gabe l/N     Teilen in N Dateien, ohne Zeilen zu teilen l/K/N   Ausgabe von K-tel von N zur Standardausgabe, ohne Zeilen  zu  teilen
r/N     wie »l«, aber Round-Robin-Verteilung benutzen r/K/N   genauso, aber nur K-tel von N zur Standardausgabe schreiben

AUTOR
Geschrieben von Torbjörn Granlund und Richard M. Stallman.

FEHLER BERICHTEN
Berichten Sie Fehler in split (auf Englisch) an bug-coreutils@gnu.org
Homepage der GNU coreutils: <http://www.gnu.org/software/coreutils/>
Allgemeine Hilfe zur Benutzung von GNU-Software: <http://www.gnu.org/gethelp/>
Berichten Sie Fehler in der Übersetzung von split an <http://translationproject.org/team/de.html>

COPYRIGHT
Copyright © 2011 Free Software Foundation, Inc. Lizenz GPLv3+: GNU GPL Version 3 oder neuer <http://gnu.org/licenses/gpl.html>.
Dies ist freie Software: Sie können sie verändern und weitergeben. Es gibt KEINE GARANTIE, soweit gesetzlich zulässig.

Wie du hier sehen kannst ist es recht simple. Nun ein paar Beispiele:

1. Aufteilen von datei.tar in gleich große Teile von 100MB mit dem alphabetischem Dateipräfix split-datei.tar.
# split -b 100M  datei.tar split-datei.tar.
Die Ausgabe sieht dann in etwa so aus:
split-datei.tar.aa
split-datei.tar.ab
usw.

2. Aufteilen von datei.tar in gleich große Teile von 1GB (1024) mit dem numerischen Dateipräfix split-datei.tar.
# split -b 1G -d datei.tar split-datei.tar.
Die Ausgabe sieht dann in etwa so aus:
split-datei.tar.01
split-datei.tar.02
usw.

3. Aufteilen in gleich große Teile mit dem Umbruch nach 10 Zeilen und dem numerischen Dateipräfix split-datei.txt.
# split -d -l 10 diese-Datei-teilen.txt split-datei.txt.
Die Augabe sieht dann für eine Datei mit 30Zeilen in etwa so aus:
split-datei.txt.01
split-datei.txt.02
split-datei.txt.03

4. Zusammenfügen von Dateien unter Debian
# cat split-datei.tar.* > archiv.tar
Hier wird aus den ganzen Teilen split-datei.tar.01, split-datei.tar.02 usw. die einzige Datei archiv.tar erstellt

5. Zusammenfügen von Dateien unter Windows mittels Dos Befehl copy
# copy /b split-datei.tar.01+split-datei.tar.02…. archiv.tar
Hier wird jede einzelne Datei angeben die am Ende zum archiv.tar zusammengefügt werden. (Es geht bestimmt auch eleganter 😉 )

6. Komprimieren und Aufteilen des Verzeichnisses “cd-images” in gleich große Teile von 200MB (1024) mit dem nummerischen Dateipräfix split-datei.tar. in einem Schritt
# tar cpvz  – cd-images/ | split -d -b 200M  split-datei.tar.
-c=create, p=Dateiberechtigung extrahieren, v=verbose, z=gzip
Hier wird das Verzeichnis gepackt und gleich geteilt. Am Ende sind dann nur noch die Teile übrig und das Archiv nicht mehr.

7. Entpacken der archivierten und geteilten Datei in einem Schritt
# cat split-datei.tar.* | tar xzpvf
Hier werden die Teile zusammengefügt und entpackt, sodass nur eine Datei übrig bleibt.

Hier noch eine Übersicht über entsprechenden Angaben der Dateigrößen:

b 512
kB 1000
K 1024
MB 1000×1000
M 1024×1024
GB 1000×1000×1000
G 1024×1024×1024

Schreibe einen Kommentar

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