Decomprimere gzip su file con altra estensione?


Risposte:


9

È possibile passare l' -Sopzione per utilizzare un suffisso diverso da .gz.

gunzip -S .compressed file.compressed

Se si desidera che il file non compresso abbia un altro nome, eseguire

gzip -dc <compressed-file >uncompressed-file
gunzip <compressed-file >uncompressed-file

(questi comandi sono equivalenti).

La decompressione normalmente ripristina il nome e la data del file originale (quando è stato compresso); questo non succede con -c.

Se si desidera che il file compresso e il file non compresso abbiano lo stesso nome, non è possibile farlo direttamente, è necessario rinominare il file compresso o rinominare il file non compresso. In particolare, gziprimuove e ricrea il file di destinazione, quindi se è necessario modificare il file in posizione perché non si dispone dell'autorizzazione di scrittura nella directory, è necessario utilizzare -co reindirizzare.

cp somefile /tmp
gunzip </tmp/somefile >|somefile

Si noti che gunzip <somefile >somefilenon funzionerà, poiché il gunzipprocesso vedrebbe un file troncato a 0 byte quando inizia la lettura. Se potessi invocare il troncamento, allora gunziprisponderebbe al suo stesso output; in entrambi i casi, questo non può essere eseguito sul posto.


2

Puoi fare qualcosa del tipo:

gzip -d - < gzippedfilewithnoextention > ungzippedfile

Ora non puoi farlo e decomprimere con lo stesso nome file. In seguito dovrai rinominare il file non compresso (ovvero non puoi effettuare il decompressione sul posto in quel modo).


1
o semplicemente "gunzip -c gzfile> ungzfile"
Chris Card

Abbastanza sorprendentemente, alcune installazioni di SO hanno gzipma non gunzip...
Mat,

1
C'è anche zcat:)
galaxy
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.