Ich habe 40 Dateien zu je 2GB, die auf einer NFS-Architektur gespeichert sind. Jede Datei enthält zwei Spalten: eine numerische ID und ein Textfeld. Jede Datei ist bereits sortiert und gezippt.Merge sort gzipped files
Wie kann ich alle diese Dateien zusammenführen, so dass die resultierende Ausgabe auch sortiert wird?
Ich weiß sort -m -k 1
sollte den Trick für unkomprimierte Dateien tun, aber ich weiß nicht, wie es mit den komprimiert denjenigen direkt zu tun.
PS: Ich möchte nicht die einfache Lösung des Dekomprimierens der Dateien auf der Festplatte, Zusammenführen und erneutes Komprimieren, da ich nicht genügend Speicherplatz dafür habe.
es ist möglich, ein Programm zu entwickeln, das alle Dateien öffnen, dekomprimiert ein Block auf einmal, merge-sortiere die Daten, outp ut die Ergebnisse (komprimiert, wenn gewünscht), und jede Eingabe nach Bedarf voranbringen - aber der Umfang einer solchen Anstrengung ist hier jenseits einer einfachen Antwort. –
@AndrewMedico Für die Aufzeichnung ist das nicht wahr - 'sort' ist genau solch ein Programm, und' bash' kann es ziemlich leicht mit 'gunzip' kombinieren. Siehe die Antworten für Details. – user4815162342