Gzip розпакувати на файл з іншим розширенням?


Відповіді:


9

Ви можете передавати -Sопцію для використання іншого суфікса .gz.

gunzip -S .compressed file.compressed

Якщо ви хочете, щоб у стисненому файлі було якесь інше ім’я, запустіть

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

(ці команди еквівалентні).

Зазвичай розпакування відновлює ім'я та дату вихідного файлу (коли він був стиснений); цього не відбувається -c.

Якщо ви хочете, щоб стислий файл і нестиснений файл мали одне ім’я, ви не можете це зробити безпосередньо, вам потрібно або перейменувати стислий файл, або перейменувати нестиснений файл. Зокрема, gzipвидаляє та відтворює цільовий файл, тому, якщо вам потрібно змінити файл на місці, оскільки у вас немає дозволу на запис у каталозі, вам потрібно скористатися -cабо перенаправити.

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

Зауважте, що gunzip <somefile >somefileце не буде працювати, оскільки gunzipпроцес побачить файл, усічений до 0 байт, коли він починає читати. Якщо ви могли б викликати усікання, то gunzipповертаєтесь із власним результатом; в будь-якому випадку цього не можна зробити на місці.


2

Ви можете зробити щось на кшталт:

gzip -d - < gzippedfilewithnoextention > ungzippedfile

Тепер ви не можете цього зробити і розпакуйте те саме ім'я файлу. Вам потрібно буде перейменувати нестиснений файл згодом (тобто ви не можете таким чином розпакувати цей спосіб).


1
або просто "gunzip -c gzfile> ungzfile"
Chris Card

Дивно, але деякі встановлення ОС мають, gzipале не gunzip...
Мат

1
Є також zcat:)
галактика
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.