Dekompresi Gzip pada file dengan ekstensi lain?

10

Apakah mungkin digunakan gzipuntuk mendekompres file yang di-gzip, tanpa ekstensi gz, dan tanpa memindahkan file?

Tyilo
sumber
Sebaliknya: unix.stackexchange.com/questions/68722/…
Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功

Jawaban:

9

Anda bisa memberikan -Sopsi untuk menggunakan suffix selain .gz.

gunzip -S .compressed file.compressed

Jika Anda ingin file yang tidak dikompresi memiliki nama lain, jalankan

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

(perintah-perintah ini setara).

Biasanya unzipping mengembalikan nama dan tanggal file asli (ketika dikompresi); ini tidak terjadi dengan -c.

Jika Anda ingin file yang dikompresi dan file yang tidak dikompresi memiliki nama yang sama, Anda tidak dapat melakukannya secara langsung, Anda harus mengganti nama file yang dikompresi atau mengganti nama file yang tidak terkompresi. Secara khusus, gzipmenghapus dan membuat ulang file targetnya, jadi jika Anda perlu memodifikasi file di tempat karena Anda tidak memiliki izin menulis di direktori, Anda perlu menggunakan -catau pengalihan.

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

Catatan yang gunzip <somefile >somefiletidak akan berfungsi, karena gunzipproses akan melihat file terpotong ke 0 byte ketika mulai membaca. Jika Anda dapat memohon pemotongan, maka gunzipakan memberi umpan balik pada outputnya sendiri; Bagaimanapun, yang ini tidak bisa dilakukan di tempat.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
2

Anda bisa, melakukan sesuatu seperti:

gzip -d - < gzippedfilewithnoextention > ungzippedfile

Sekarang Anda tidak bisa melakukan itu dan membuka kompresi ke nama file yang sama. Anda harus mengganti nama file yang tidak dikompresi sesudahnya (yaitu Anda tidak bisa melakukan uncompress dengan cara itu).

Tikar
sumber
1
atau hanya "gunzip -c gzfile> ungzfile"
Chris Card
Cukup mengejutkan, beberapa instalasi OS memiliki gziptetapi tidak gunzip...
Mat
1
Ada juga zcat:)
galaksi