Gezippte Logfiles aufteilen, ohne die ungezippten Splits auf der Festplatte zu speichern

Ich habe die wiederkehrende Aufgabe, einen Satz großer Apache-Logfiles (jeweils ca. 1 bis 2 GB) in mehrere Teile zu zerlegen (z. B. Blöcke mit 500 KB Zeilen). Die endgültigen Dateien sollten erneut komprimiert werden, um die Datenträgerverwendung einzuschränken.

nter Linux würde ich normalerweise tun:

zcat biglogfile.gz | split -l500000

Die resultierenden Dateien heißen xaa, xab, xac usw. Also mache ich:

gzip x*

Der Effekt dieser Methode ist, dass als Zwischenergebnis dieseenor -Dateien werden vorübergehend auf der Festplatte gespeichert. Gibt es eine Möglichkeit, diese zwischenzeitliche Datenträgerverwendung zu vermeiden?

Kann ich (ähnlich wie bei xargs) die Ausgabe durch einen Befehl (wie gzip) teilen und die Ausgabe im laufenden Betrieb neu komprimieren? Oder schaue ich in die falsche Richtung und gibt es einen viel besseren Weg, dies zu tun?

Vielen Dank

Antworten auf die Frage(6)

Ihre Antwort auf die Frage