![如何使用 lzma 将多个文件压缩为一个档案?](https://linux22.com/image/1348044/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20lzma%20%E5%B0%86%E5%A4%9A%E4%B8%AA%E6%96%87%E4%BB%B6%E5%8E%8B%E7%BC%A9%E4%B8%BA%E4%B8%80%E4%B8%AA%E6%A1%A3%E6%A1%88%EF%BC%9F.png)
xz
查看和的选项lzma
,我无论如何也想不出如何将多个文件压缩成一个存档。我知道这是可能的,因为我解压了一个.lzma
文件,它打开了大量歌曲。
如果我尝试lzma -k file file file file
这样做,只会单独压缩每个文件。我遗漏了什么明显的选项或参数吗?
答案1
你可以做的一件事是使用 tar:
tar cf files.lzma --lzma file1 file2 ... fileN
或者更简单一点,
tar cf files.lzma --lzma file*
这将创建files.lzma
档案,然后您可以使用以下命令解压:
tar xf files.lzma
答案2
曼·伊兹玛
例子
基本
使用默认压缩级别(-6)将文件 foo 压缩为 foo.xz,如果压缩成功则删除 foo:
xz foo
将 bar.xz 解压为 bar,即使解压成功也不要删除 bar.xz:
xz -dk bar.xz
使用预设的 -4e(-4 --extreme)创建 baz.tar.xz,它比默认值 -6 慢,但压缩和解压缩所需的内存更少(分别为 48 MiB 和 5 MiB):
tar cf - baz | xz -4e > baz.tar.xz
可以使用单个命令将压缩和未压缩的文件解压缩到标准输出:
xz -dcf a.txt b.txt.xz c.txt d.txt.lzma > abcd.txt