5.6 split – Dateien aufspalten
Ein nettes Tool, um große Dateien in kleinere Hälften aufzuteilen, ist split. Die Aufteilung erfolgt entweder basierend auf Zeilen (-l) oder aber auf Bytes (-b).
Gehen wir einmal davon aus, dass eine Backup-Datei auf eine Diskette kopiert werden soll. Eine Diskette bietet 1440 KB Speicherplatz. Wir benötigen von besagter Backup-Datei also Teile zu je 1440 Kb, um eine effiziente Speichernutzung auf diesen »Backup-Medien« zu erzielen. Die Datei selbst hat eine Größe x. split erstellt nun so lange 1440 KB große Dateien, bis die komplette Backup-Datei aufgeteilt ist.
Wenn die Datei nicht die Größe eines Vielfachen von 1440 KB hat, wird die letzte Datei natürlich nur die verbleibenden Restdaten, also das Ende der Backup-Datei enthalten und damit 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 5.15 Aufteilen der Backup-Datei in 1440 KB große Teile
Dateien zusammenfügen
Die Dateien xaa, xab, xac usw. 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 xa? > backup.tgz
Listing 5.16 Zusammenfügen der Dateien