Поиск по сайту:

Учебное пособие по командам Linux xz для начинающих (7 примеров)


На этой странице

  1. Команда Linux xz
  2. Q1. Как использовать команду xz?
  3. Вопрос 2. Как заставить xz сохранить исходный файл?
  4. Вопрос 3. Как сжать несколько файлов?
  5. Q4. Как распаковать файлы .xz?
  6. В5. Как заставить xz печатать информацию о сжатых файлах?
  7. Q6. Как указать другой формат сжатия/распаковки?
  8. Q7. Как заставить xz отображать индикатор прогресса?
  9. Заключение

В Linux существует несколько способов сжатия и распаковки файлов. Хотя мы уже обсудили некоторые (здесь), есть много того, чего мы еще не сделали. Итак, здесь, в этом уроке, мы обсудим еще одну такую утилиту командной строки.

Его назвали xz. Мы обсудим основы этого инструмента командной строки. Но прежде чем мы перейдем к этому, стоит упомянуть, что все приведенные здесь примеры были протестированы на компьютере с Ubuntu 18.04 LTS.

Команда Linux xz

Как уже упоминалось в начале, команда xz в Linux позволяет сжимать и распаковывать файлы. Ниже приведен его синтаксис:

xz [option...]  [file...]

И вот что об этом говорит справочная страница:

     xz is a general-purpose data compression tool with command line syntax similar to gzip(1) 
and bzip2(1).  The native file format is the .xz format, but the legacy .lzma format used
by LZMA Utils and raw compressed streams with no container format headers are also supported.

     xz compresses or decompresses each file according to the selected operation mode.  If no files
are given or file  is  -,  xz  reads from standard input and writes the processed data to
standard output.  xz will refuse (display an error and skip the file) to write compressed data
to standard output if it is a terminal.  Similarly, xz will refuse to read compressed data
from standard  input if it is a terminal.

Ниже приведены несколько примеров в стиле вопросов и ответов, которые должны дать вам лучшее представление о том, как работает xz.

Q1. Как использовать команду xz?

Базовое использование довольно простое. Просто передайте имя файла (который должен быть сжат) в качестве входного аргумента для xz. Вот пример:

xz file.txt

В моей системе вышеупомянутая команда создала следующий файл в качестве вывода.

file.txt.xz

Итак, вы можете увидеть сжатый командой xz файл .txt. Стоит отметить, что операция заменяет исходный файл (в данном случае file.txt) сжатой версией.

Q2. Как заставить xz сохранить исходный файл?

Как я упоминал в предыдущем разделе, команда xz заменяет исходный файл его сжатой версией. Однако, если вы хотите, вы можете заставить xz также сохранить исходный файл. Это можно сделать с помощью параметра командной строки -k.

Например:

xz -k file.txt

Итак, на этот раз вы найдете файлы file.txt и file.txt.xz в текущем рабочем каталоге.

Q3. Как сжать несколько файлов?

Это очень просто. Просто передайте имена в качестве входных аргументов в xz.

Например:

xz file1.txt file2.txt

Эта команда сожмет оба этих файла за один раз.

Q4. Как распаковать файлы .xz?

Чтобы распаковать файлы .xz, используйте параметр командной строки -d. Например:

xz -d file.txt.xz

Эта команда создаст файл .txt в текущем рабочем каталоге.

Q5. Как заставить xz печатать информацию о сжатых файлах?

Это можно сделать с помощью параметра командной строки -l. Например:

xz -l file.txt.xz

Эта команда выдала следующую информацию в моем случае:

Strms  Blocks   Compressed Uncompressed  Ratio  Check   Filename
    1       1         96 B         37 B  2.595  CRC64   file.txt.xz

Q6. Как указать другой формат сжатия/распаковки?

Это можно сделать с помощью параметра командной строки -F. Однако, чтобы использовать эту опцию, вы должны понимать следующее:

-F format, --format=format
       Specify the file format to compress or decompress:

       auto   This is the default.  When compressing, auto is equivalent to xz.  When decompressing, the format of the  input  file
              is automatically detected.  Note that raw streams (created with --format=raw) cannot be auto-detected.

       xz     Compress to the .xz file format, or accept only .xz files when decompressing.

       lzma, alone
              Compress  to the legacy .lzma file format, or accept only .lzma files when decompressing.  The alternative name alone
              is provided for backwards compatibility with LZMA Utils.

       raw    Compress or uncompress a raw stream (no headers).  This is meant for advanced users only.  To decode raw streams, you
              need use --format=raw and explicitly specify the filter chain, which normally would have been stored in the container
              headers.

Итак, вы можете использовать любой из следующих форматов: auto, xz, lzma и raw.

Q7. Как заставить xz отображать индикатор прогресса?

Это можно сделать с помощью параметра командной строки -v. Вот пример:

Заключение

Хотя в этом руководстве мы обсудили несколько параметров командной строки xz, их гораздо больше. Как только вы закончите понимать и практиковать их, перейдите на справочную страницу инструментов, чтобы узнать больше об этом.