7.10    split – Dateien aufspalten

Ein Tool, das große Dateien in kleinere Stücke aufteilt, ist split. Die Aufteilung erfolgt entweder durch Zeilen (-l) oder aber durch Bytes (-b).

Gehen wir einmal davon aus, dass Sie eine riesige Backup-Datei auf mehrere große Speichermedien aufteilen wollen, dann wäre es doch gut, diese Datei in Teile zu zerlegen. Weil wir Retro-Computing mögen und weil die Dateigröße bei der Erklärung von split letztlich keine Rolle spielt, nehmen wir spaßeshalber an, Sie würden Ihr Backup auf Disketten kopieren. Eine Diskette bietet 1.440 KB Speicherplatz, wir benötigen von der Backup-Datei also 1.440 KB große Teile, um eine effiziente Speichernutzung auf den Backup-Medien zu erzielen.

Die Datei selbst hat eine Größe x. split erstellt nun so lange 1.440 KB große Dateien, bis die komplette Backup-Datei aufgeteilt ist.

Wenn die Datei nicht die Größe eines Vielfachen von 1.440 KB hat, wird die letzte Datei natürlich nur die verbleibenden Restdaten und damit das Ende der Backup-Datei enthalten und aus diesem Grund auch nicht den kompletten Speicherplatz belegen.

Bei der Aufteilung in Byte können folgende Suffixe verwendet werden: b für Blockeinheiten zu je 512 Byte, k für Kilobyte sowie m für Megabyte.

user$ split -b 1440k backup.tgz
user$ ls xa?
xaa xab xac xad xae xaf xag

Listing 7.13     Aufteilen der Backup-Datei in 1.440 KB große Teile

Die Dateien xaa, xab, xac ... sind die neu erstellten Teildateien. Doch wie fügt man sie »nu' wieder 'zam«? Nun, es gibt viele Möglichkeiten, dies zu tun, die einfachste dürfte jedoch ein Aufruf von cat in Verbindung mit einer Ausgabeumlenkung sein.

$ cat x?? > backup.tgz

Listing 7.14     Zusammenfügen der Dateien