- Сжатие и архивация файлов с помощью Gzip, Zip и Tar
- Архивация с помощью Tar
- Команда gzip в операционной системе Linux
- Синтаксис команды gzip
- Сжатие файлов с помощью gzip
- Сохранение исходного файла
- Подробный вывод
- Сжатие нескольких файлов
- Сжатие всех файлов в каталоге
- Изменение уровня сжатия
- Использование стандартного ввода
- Распаковка файлов с помощью gzip
- Сохранение сжатого файла
- Распаковка нескольких файлов
- Распаковка всех файлов в каталоге
- Перечень содержимого сжатого файла
- Заключение
- Команда Gzip в Linux
- Синтаксис команды gzip
- Сжатие файлов с помощью gzip
- Сохраните исходный файл
- Подробный вывод
- Сжать несколько файлов
- Сжать все файлы в каталоге
- Измените уровень сжатия
- Стандартный ввод
- Распаковка файлов с помощью gzip
- Сохраните сжатый файл
- Распаковать несколько файлов
- Распаковать все файлы в каталоге
- Список содержимого сжатого файла
- Выводы
Сжатие и архивация файлов с помощью Gzip, Zip и Tar
Сжатые файлы занимают меньше места на диске и загружаются из сети быстрее, чем большие, несжатые файлы. Вы можете сжать файлы Linux свободно распространяемыми утилитами сжатия Gzip или Zip , такой формат распознаётся большинством операционных систем.
По умолчанию, сжатые файлы получают расширение .gz . Команда Gzip создаёт сжатый файл с расширением .gz ; Gunzip извлекает сжатые файлы и удаляет файл .gz .
Чтобы сжать файл, в приглашении оболочки введите следующая команду:
Файл будет сжат и сохранён под именем filename.ext.gz .
Чтобы развернуть сжатый файл введите:
Файл filename.ext.gz при этом удаляется и заменяется файлом filename.ext .
Если вы обмениваетесь файлам с пользователям не Linux, вероятно лучше использовать zip , чтобы избежать проблем совместимости. Red Hat Linux может легко открыть zip или gzip файлы, но не Linux операционные системы могут не справиться с файлами gzip.
Чтобы сжать файл с помощью zip , введите:
В этом примере filename определяет имя создаваемого файла, а files определяет какие файлы вы хотите включить в архив:
Чтобы извлечь содержимое файла zip, введите:
Вы можете сжать с помощью zip или gzip сразу несколько файлов. Перечислите имена файлов, разделив их пробелами.
gzip filename.gz file1 file2 file3 /user/work/school
Приведённая выше команда сожмёт file1 , file2 , file3 и содержимое каталога /user/work/school и поместит их в файл filename.gz .
Архивация с помощью Tar
Tar сохраняет несколько файлов или содержимое каталога или каталогов в одном файле. Это хороший способ создавать резервные копии и архивы. Обычно файлы, сделанные tar, имеют расширение .tar .
Чтобы создать файл tar, введите:
tar -cvf filename.tar files/directories
В этом примере filename.tar определяет имя создаваемого файла, а files/directories определяет какие файлы или каталоги вы хотите включить в новый архив.
Вы можете использовать абсолютные или относительные пути для этих файлов или каталогов (чтобы узнать больше о путях, обратитесь к разделу Смена каталогов с помощью cd в Главе 10 ). Разделите имена файлов и каталогов пробелами.
В показанном ниже примере показано создание файла с абсолютными путями:
tar -cvf foo.tar /home/mine/work /home/mine/school
Указанная выше команда поместит все файлы каталога /work и подкаталога /school в новый файл foo.tar в текущем рабочем каталоге.
Команда tar -cvf foo.tar file1.txt file2.txt file3.txt поместит файлы: file1.txt , file2.txt и file3.txt в новый файл foo.tar .
Чтобы просмотреть содержимое файла tar, введите:
Чтобы извлечь содержимое файла tar, введите:
Эта команда не удаляет файл .tar , а извлекает содержимое .tar в текущий рабочий каталог.
Команда tar не автоматического выполняет сжатия файлов. Вы можете сжать файлы tar выполнив:
Сжатые файлы обычно имеют расширение .tgz и сжимаются при помощи gzip.
Чтобы развернуть сжатый файл tar введите:
Команда gzip в операционной системе Linux
Gzip – один из самых популярных алгоритмов сжатия, который позволяет сократить размер файла, но при этом сохранить исходный файловый режим, владельца объекта и отметку времени.
Gzip является отсылкой к формату файлов .gz и утилите gzip , используемой для сжатия и распаковки файлов.
В данной статье мы покажем, как использовать команду gzip .
Синтаксис команды gzip
Общий синтаксис команды gzip выглядит следующим образом:
Gzip сжимает отдельные файлы и создает сжатый файл для каждого заданного файла в отдельности. По определению имя файла, который был сжат с помощью Gzip, должно оканчиваться на .gz или .z .
Если вам необходимо сжать несколько файлов или каталогов в один файл, то для начала вам нужно создать архив Tar, а затем уже сжать файл с разрешением .tar с помощью Gzip. Файл, оканчивающийся на .tar.gz или .tgz , представляет собой архив Tar, сжатый с помощью Gzip.
Как правило, Gzip используют для сжатия текстовых файлов, архивов Tar и веб-страниц. Не нужно использовать Gzip для сжатия изображений, аудиофайлов, PDF-документов и других файлов в двоичном формате, поскольку они уже являются сжатыми.
gzip может сжимать только обычные файлы. символические ссылки он игнорирует.
Сжатие файлов с помощью gzip
Для того, чтобы сжать один файл, вызовите команду gzip , за которой следует имя файла:
gzip создаст файл с именем имя_файла.gz , а исходный файл удалит.
По умолчанию gzip сохраняет в сжатом файле временную метку, файловый режим, владельца объекта и имя исходного файла.
Сохранение исходного файла
Если вы хотите, чтобы исходный файл был сохранен, воспользуйтесь параметром –k :
Есть еще один вариант сохранить исходный файл – воспользоваться параметром -c , который сообщает gzip о необходимости записи в стандартный вывод и перенаправлении вывода в файл:
gzip -c имя_файла > имя_файла.gz
Подробный вывод
Если вы хотите увидеть процент уменьшения размера файла и имена обрабатываемых файлов, тогда воспользуйтесь параметром -v :
gzip -v имя_файла имя_файла: 7.5% -- replaced with имя_файла.gz
Сжатие нескольких файлов
В качестве аргументов команде вы можете передать несколько файлов. Например, чтобы сжать файлы с именами file1 , file2 , file3 , вам необходимо выполнить следующую команду:
После чего приведенная выше команда создаст три сжатых файла: file1.gz , file2.gz , file3.gz .
Сжатие всех файлов в каталоге
Для того, чтобы сжать все файлы в каталоге, воспользуйтесь параметром -r :
gzip рекурсивно пройдет через всю структуру каталогов и произведет сжатие всех файлов в каталоге и его подкаталогах.
Изменение уровня сжатия
gzip дает возможность указать уровень сжатия, его диапазон — от 1 до 9. -1 или —fast означает самую высокую скорость сжатия с минимальной степенью сжатия, -9 или —best — самую низкую скорость с максимальной степенью. По умолчанию уровень сжатия равен -6 .
Например, чтобы установить максимальный уровень сжатия, вам необходимо запустить следующую команду:
Сжатие – это задача, интенсивно использующая ЦП. Соответственно, чем выше уровень сжатия, тем больше времени занимает процесс.
Использование стандартного ввода
Для того, чтобы создать файл расширения .gz из стандартного ввода, вам необходимо передать вывод команды gzip. Например, чтобы сжать резервную копию базы данных MySQL, вам необходимо запустить следующую команду:
mysqldump имя_базы_данных | gzip -c > имя_базы_данных.sql.gz
Вывод команда mysqldump послужит вводом для gzip.
Распаковка файлов с помощью gzip
Для того, чтобы распаковать файл с расширением .gz , воспользуйтесь параметром -d :
Есть также еще одна команда, которую вы можете использовать для распаковки файла Gzip, — это gunzip . Эта команда по сути является альтернативным вариантом команды gzip -d :
Сохранение сжатого файла
Здесь, как и при сжатии файла, для того, чтобы показать gzip, что входной файл (в данном случае это сжатый файл) нужно сохранить, необходимо воспользоваться параметром -k :
Распаковка нескольких файлов
Для того, чтобы распаковать несколько файлов одновременно, вам необходимо передать имена файлов в gzip в качестве аргументов:
gzip -d file1.gz file2.gz file3.gz
Распаковка всех файлов в каталоге
Для того, чтобы gzip рекурсивно распаковал все файлы в заданном каталоге, необходимо воспользоваться параметрами -d и -r :
Перечень содержимого сжатого файла
Для того, чтобы посмотреть статистику данных сжатого файла, воспользуйтесь параметром -l :
Вывод покажет имя несжатого файла, размер сжатого и несжатого файла, а также степень сжатия:
compressed uncompressed ratio uncompressed_name 130 107 7.5% имя_файла
Чтобы получить больше информации, добавьте параметр -v :
gzip -lv имя_файла method crc date time compressed uncompressed ratio uncompressed_name defla a9b9e776 Sep 3 21:20 130 107 7.5% имя_файла
Заключение
С помощью Gzip вы можете уменьшить размер определенного файла — команда gzip позволяет сжимать и распаковывать файлы.
Команда Gzip в Linux
Gzip — один из самых популярных алгоритмов сжатия, который позволяет уменьшить размер файла и сохранить исходный режим файла, право собственности и временную метку.
Gzip также относится к .gz файлов .gz и утилите gzip которая используется для сжатия и распаковки файлов.
В этом руководстве мы покажем вам, как использовать команду gzip .
Синтаксис команды gzip
Общий синтаксис команды gzip следующий:
Gzip сжимает только отдельные файлы и создает сжатый файл для каждого заданного файла. По соглашению, имя файла, сжатого с помощью Gzip, должно заканчиваться на .gz или .z .
Если вы хотите сжать несколько файлов или каталогов в один файл, сначала вам нужно создать архив Tar, а затем сжать файл .tar с помощью Gzip. Файл с .tar.gz или .tgz представляет собой архив Tar, сжатый с помощью Gzip.
Gzip чаще всего используется для сжатия текстовых файлов, архивов Tar и веб-страниц. Не используйте Gzip для сжатия изображений, аудио, документов PDF и других двоичных файлов, поскольку они уже сжаты.
gzip может сжимать только обычные файлы. Символьные ссылки игнорируются.
Сжатие файлов с помощью gzip
Чтобы сжать отдельный файл, вызовите команду gzip за которой следует имя файла:
gzip создаст файл filename.gz и удалит исходный файл.
По умолчанию gzip сохраняет в сжатом файле метку времени, режим, владельца и имя исходного файла.
Сохраните исходный файл
Если вы хотите сохранить исходный (исходный) файл, используйте параметр -k :
Другой вариант сохранить исходный файл — использовать параметр -c который сообщает gzip о необходимости записи в стандартный вывод и перенаправления вывода в файл:
gzip -c filename > filename.gz
Подробный вывод
Используйте параметр -v если вы хотите увидеть процентное сокращение и имена обрабатываемых файлов:
filename: 7.5% -- replaced with filename.gz
Сжать несколько файлов
Вы также можете передать несколько файлов в качестве аргументов команде. Например, чтобы сжать файлы с именами file1 , file2 , file3 , вы должны выполнить следующую команду:
Приведенная выше команда создаст три сжатых файла: file1.gz , file2.gz , file3.gz .
Сжать все файлы в каталоге
Чтобы сжать все файлы в данном каталоге, используйте параметр -r :
gzip будет рекурсивно проходить по всей структуре каталогов и сжимать все файлы в каталоге и его подкаталогах.
Измените уровень сжатия
gzip позволяет указать диапазон уровней сжатия от 1 до 9. -1 или —fast означает самую высокую скорость сжатия с минимальной степенью сжатия, -9 или —best указывает на самую —best скорость сжатия с максимальной степенью сжатия. Уровень сжатия по умолчанию -6 .
Например, чтобы получить максимальное сжатие, вы должны запустить:
Сжатие — это задача, интенсивно использующая процессор, и чем выше уровень сжатия, тем больше времени занимает процесс.
Стандартный ввод
Чтобы создать файл .gz из стандартного .gz , перенаправьте вывод команды в gzip . Например, чтобы создать резервную копию базы данных MySQL в формате Gzip, вы должны выполнить:
mysqldump database_name | gzip -c > database_name.sql.gz
Вывод команды mysqldump будет вводиться для gzip .
Распаковка файлов с помощью gzip
Чтобы распаковать файл .gz , используйте параметр -d :
Другая команда, которую вы можете использовать для распаковки Gzip-файла, — это gunzip . Эта команда в основном является псевдонимом для gzip -d :
Возможно, вам будет проще запомнить gunzip чем gzip -d .
Сохраните сжатый файл
Как и при сжатии файла, параметр -k сообщает gzip нужно сохранить входной файл, в данном случае это сжатый файл:
Распаковать несколько файлов
Чтобы распаковать сразу несколько файлов, передайте имена файлов в gzip качестве аргументов:
gzip -d file1.gz file2.gz file3.gz
Распаковать все файлы в каталоге
При использовании с параметрами -d и -r gzip рекурсивно распаковывает все файлы в указанном каталоге:
Список содержимого сжатого файла
При использовании с параметром -l gzip показывает статистику по данным сжатым файлам:
Вывод будет включать имя несжатого файла, сжатый и несжатый размер и степень сжатия:
compressed uncompressed ratio uncompressed_name 130 107 7.5% filename
Чтобы получить дополнительную информацию, добавьте параметр -v :
method crc date time compressed uncompressed ratio uncompressed_name defla a9b9e776 Sep 3 21:20 130 107 7.5% filename
Выводы
С помощью Gzip вы можете уменьшить размер данного файла. Команда gzip позволяет сжимать и распаковывать файлы.
Для получения дополнительной информации о команде gzip обратитесь к странице документации Gnu gzip .
Если у вас есть вопросы, оставьте комментарий ниже.