
Ich habe eine große, sich wiederholende Textdatei. Sie lässt sich sehr gut komprimieren – komprimiert ist sie etwa 3 MB groß. Dekomprimiert benötigt sie jedoch 1,7 GB. Da sie sich wiederholt, benötige ich nur einen Bruchteil der Ausgabe, um den Inhalt der Datei zu überprüfen.
Es wurde mit komprimiert gzip
. gunzip
Gibt es eine Möglichkeit, nur die ersten paar Megabyte einer Datei zu dekomprimieren?
Antwort1
Sie können es auf die Standardausgabe dekomprimieren und es durch etwas wie Folgendes leiten, head
um nur einen Teil davon zu erfassen:
gunzip -c file.gz | head -c 20M >file.part
Das -c
Flag head
erfordert die head
Implementierung, die von GNU Coreutils bereitgestellt wird.
dd
kann auch verwendet werden:
gunzip -c file.gz | dd of=file.part bs=1M count=20
Beide Pipelines kopieren die ersten 20 MiB der unkomprimierten Datei nach file.part
.