Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Looking at the options of xz and lzma, I can't for the life of me figure out how to compress multiple files into one archive. I know it is possible because I've uncompressed a .lzma file and it opened a ton of songs.
If i try doing lzma -k file file file file it just compresses each one individually. Is there an obvious option or argument I'm missing?

share|improve this question
up vote 5 down vote accepted

One thing you could do is use tar:

tar cf files.lzma --lzma file1 file2 ... fileN

Or, simpler,

tar cf files.lzma --lzma file*

That creates the files.lzma archive which you can then unpack using:

tar xf files.lzma
share|improve this answer
It's worthwhile to point out that, unlike zip, rar, arj on windows et al the common tools on unix/linux systems operate on streams, hence commonly have no option to create a single archive file. – tink Jan 22 '13 at 19:12
@tink what common tools are you referring to? gzip and tar can. – terdon Jan 22 '13 at 19:16
gzip, bzip2, compress ... I can't see any mention of compressing several files into one archive using gzip alone. Concatenating the content of several files into one using -c with a redirect doesn't count :) – tink Jan 22 '13 at 21:12

man lzma



Compress the file foo into foo.xz using the default compression level (-6), and remove foo if compression is successful:

xz foo

Decompress bar.xz into bar and don't remove bar.xz even if decompression is successful:

xz -dk bar.xz

Create baz.tar.xz with the preset -4e (-4 --extreme), which is slower than e.g. the default -6, but needs less memory for compression and decompression (48 MiB and 5 MiB, respectively):

tar cf - baz | xz -4e > baz.tar.xz

A mix of compressed and uncompressed files can be decompressed to standard output with a single command:

xz -dcf a.txt b.txt.xz c.txt d.txt.lzma > abcd.txt
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.