Wie bekomme ich die ersten paar Zeilen aus einer gziped-Datei? Ich habe versucht, zcat, aber es wirft einen Fehler
zcat CONN.20111109.0057.gz|head
CONN.20111109.0057.gz.Z: A file or directory in the path name does not exist.
Wie bekomme ich die ersten paar Zeilen aus einer gziped-Datei? Ich habe versucht, zcat, aber es wirft einen Fehler
zcat CONN.20111109.0057.gz|head
CONN.20111109.0057.gz.Z: A file or directory in the path name does not exist.
Antworten:
zcat(1)
kann entweder von compress(1)
oder von geliefert werden gzip(1)
. Auf Ihrem System scheint es so zu sein compress(1)
- es sucht nach einer Datei mit einer .Z
Erweiterung.
Wechseln Sie zu gzip -cd
anstelle von zcat
und Ihr Befehl sollte einwandfrei funktionieren:
gzip -cd CONN.20111109.0057.gz | head
Erläuterung
-c --stdout --to-stdout
Write output on standard output; keep original files unchanged. If there are several input files, the output consists of a sequence of independently compressed members. To obtain better compression, concatenate all input files before compressing
them.
-d --decompress --uncompress
Decompress.
zless file.gz | head
. zmore
lässt dich immer noch mit gebrochenem Rohr. zless
scheint der richtige Weg zu sein.
Auf einigen Systemen (z. B. Mac) müssen Sie verwenden gzcat
.
Auf einem Mac müssen Sie <
Folgendes mit zcat verwenden:
zcat < CONN.20111109.0057.gz|head
Wenn ein kontinuierlicher Linienbereich erforderlich ist, kann eine Option sein:
gunzip -c file.gz | sed -n '5,10p;11q' > subFile
wobei die Zeilen zwischen der 5. und 10. Zeile (beide einschließlich) von file.gz
in eine neue extrahiert werden subFile
. Für sed
Optionen finden Sie in der Bedienungsanleitung .
Wenn beispielsweise jede fünfte Zeile erforderlich ist:
gunzip -c file.gz | sed -n '1~5p;6q' > subFile
Das extrahiert die 1. Zeile und springt über 4 Zeilen und wählt die 5. Zeile und so weiter.
tar -xzOf some_huge_file.tar.gz | head