Команда Linux gzip: сжать файл или каталог
Команда Linux gzip: сжать файл или каталог

gzip — это команда, часто используемая для сжатия и распаковки файлов в системах Linux. Расширение новых файлов, сжатых этой командой, обычно помечается как «.gz».

Позвольте мне еще раз подчеркнуть, что команду gzip можно использовать только для сжатия файлов, а не каталогов. Даже если указан каталог, она может сжимать только все файлы в нем.

Основной формат команды gzip следующий:

Язык кода:javascript
копировать
[root@localhost ~]# gzip [параметры] источникдокумент

Исходный файл в команде относится к обычному файлу при выполнении операции сжатия, при выполнении операции распаковки — к сжатому файлу;

【Пример 1】Базовое сжатие. Команда сжатия gzip очень проста. Вам даже не нужно указывать имя сжатого пакета после сжатия, достаточно указать имя исходного файла. Давайте попробуем:

Язык кода:javascript
копировать
[root@localhost ~]# gzip install.log
#сжатиеinstal.log документ
[root@localhost ~]# ls
anaconda-ks.cfg install.log.gz install.log.syslog
#сжатиедокументгенерировать,нодаисточникдокументтоже исчез

[Пример 2] Сохраняйте сжатие исходного файла. Когда вы сжимаете файл с помощью команды gzip, исходный файл исчезает, в результате чего получается сжатый файл. В это время у некоторых людей возникает обсессивно-компульсивное расстройство, и они спрашивают автора: можете ли вы предотвратить исчезновение исходного файла при сжатии файла? Ладно, это возможно, но это очень неудобно.

Язык кода:javascript
копировать
[root@localhost ~]# gzip -c anaconda-ks.cfg >anaconda-ks.cfg.gz
#Используйте опцию -c,Но да не позволяет сжатие вывода данных на экран,И да перенаправляет на сжатиедокумент,Это можно уменьшитьдокументпока нетудалитьисточникдокумент
[root@localhost ~]# ls
anaconda-ks.cfg anaconda-ks.cfg.gz install.log.gz install.log.syslog
#можно увидетьсжатиедокументиисточникдокумент Все существуютсуществовать

[Пример 3] Сжатый каталог. Мы могли бы считать само собой разумеющимся, что команда gzip может сжимать каталоги. Давайте попробуем:

Язык кода:javascript
копировать
[root@localhost ~]# тест mkdir
[root@localhost ~]# touch test/test1
[root@localhost ~]# touch test/test2
[root@localhost ~]# touch test/test3 #Создать тестовый каталог,исуществовать Создайте несколько внутритестдокумент
[root@localhost ~]# gzip -r test/
Каталог #сжатие, ошибок не обнаружено
[root@localhost ~]# ls
anaconda-ks.cfg anaconda-ks.cfg.gz install.log.gz install.log.syslog test
#нода Посмотреть результатыtestКаталог все еще существуетсуществовать,ине сталсжатиедокумент
[root@localhost ~]# ls test/
testl .gz test2.gz test3.gz
#оказатьсяgzipКоманда не будет Пакет Оглавление,ида Пучок Оглавление Сыграйте все пьесыдокументсоответственносжатие

В Linux упаковка и сжатие обрабатываются отдельно. Команда gzip может только сжимать, но не упаковывать, поэтому может возникнуть ситуация, когда каталога упаковки нет, а сжимаются только файлы в каталоге.

boy illustration
Весенние аннотации: подробное объяснение @ResponseBody!
boy illustration
Компания Huawei вступила во второй этап и готова спешить!
boy illustration
Быстро изучите в одной статье — концепцию и технологию реализации NL2SQL для передачи данных с нулевыми затратами.
boy illustration
Как использовать SpringBoot для интеграции EasyExcel 3.x для реализации элегантных функций импорта и экспорта Excel?
boy illustration
Почему транзакция не вступает в силу, когда @Transactional добавляется в частный метод?
boy illustration
Знание создания образов Docker: подробное объяснение команды Dockerfile.
boy illustration
Псевдостатическая конфигурация ThinkPHP
boy illustration
Код изображения для загрузки апплета WeChat: последний доступный (код серверной части + код внешнего интерфейса)
boy illustration
Используйте растровое изображение Redis для реализации эффективной функции статистики регистрации пользователей.
boy illustration
[Nginx29] Обучение Nginx: буфер прокси-модуля (3) и обработка файлов cookie
boy illustration
[Весна] SpringBoot интегрирует ShardingSphere и реализует многопоточную вставку 10 000 фрагментов данных в пакетном режиме (выполнение операций с базой данных и таблицами).
boy illustration
SpringBoot обрабатывает форму данных формы для получения массива объектов
boy illustration
Nginx от новичка до новичка 01 - Установка Nginx через установку исходного кода
boy illustration
Проект flask развертывается на облачном сервере и получает доступ к серверной службе через доменное имя.
boy illustration
Порт запуска проекта Spring Boot часто занят, полное решение
boy illustration
Java вызывает стороннюю платформу для отправки мобильных текстовых сообщений
boy illustration
Практическое руководство по серверной части: как использовать Node.js для разработки интерфейса RESTful API (Node.js + Express + Sequelize + MySQL)
boy illustration
Введение в параметры конфигурации большого экрана мониторинга Grafana (2)
boy illustration
В статье «Научно-популярная статья» подробно объясняется протокол NTP: анализ точной синхронизации времени.
boy illustration
Пример разработки: серверная часть Java и интерфейсная часть vue реализуют функции комментариев и ответов.
boy illustration
Nodejs реализует сжатие и распаковку файлов/каталогов.
boy illustration
SpringBootИнтегрироватьEasyExcelСложно реализоватьExcelлистимпортировать&Функция экспорта
boy illustration
Настройка среды под Mac (используйте Brew для установки go и protoc)
boy illustration
Навыки разрешения конфликтов в Git
boy illustration
Распределенная система журналов: развертывание Plumelog и доступ к системе
boy illustration
Артефакт, который делает код элегантным и лаконичным: программирование на Java8 Stream
boy illustration
Spring Boot(06): Spring Boot в сочетании с MySQL создает минималистскую и эффективную систему управления данными.
boy illustration
Как использовать ArrayPool
boy illustration
Интегрируйте iText в Spring Boot для реализации замены контента на основе шаблонов PDF.
boy illustration
Redis реализует очередь задержки на основе zset