xz utils 是为 posix 平台开发具有高压缩率的工具。它使用 lzma2 压缩算法,生成的压缩文件比 posix 平台传统使用的 gzip、bzip2 生成的压缩文件更小,而且解压缩速度也很快。
最初 xz utils 的是基于 lzma-sdk 开发,但是 lzma-sdk 包含了一些 windows 平台的特性,所以 xz utils 为以适应 posix 平台作了大幅的修改。xz utils 的出现也是为了取代 posix 系统中旧的 lzma utils。
语法格式: xz [参数]
常用参数:
z, --compress | 强制压缩 |
-t, --test | 测试压缩文件的完整性 |
-l, --list | 列出有关.xz文件的信息 |
-k, --keep | 保留(不要删除)输入文件 |
-f, --force | 强制覆盖输出文件和(解)压缩链接 |
-c, --stdout, --to-stdout | 写入标准输出,不要删除输入文件 |
-0 … -9 | 压缩预设; 默认为6; 取压缩机和使用7-9之前解压缩内存使用量考虑在内! |
-e, --extreme | 尝试通过使用更多的cpu时间来提高压缩比 |
-t, --threads=num | 最多使用num个线程; 默认值为1 |
set to 0 | 设置为0,使用与处理器内核一样多的线程 |
-q, --quiet | 抑制警告; 指定两次以抑制错误 |
-v, --verbose | 冗长; 指定两次更详细 |
-h, --help | 显示这个简洁的帮助并退出 |
-h, --long-help | 显示更多帮助(还列出了高级选项) |
-v, --version | 显示版本号并退出 |
参考实例
压缩一个文件 test.txt,压缩成功后生成 test.txt.xz, 原文件会被删除:
[root@linuxcool ~]$ xz test.txt [root@linuxcool ~]$ ls test.txt* test.txt.xz
解压 test.txt.xz 文件,并使用参数 -k 保持原文件不被删除:
[root@linuxcool ~]$ xz -d -k test.txt.xz [root@linuxcool ~]$ ls test.txt* test.txt.xz test.txt
参数 -h 比使用参数 --help 显示的内容更详细:
[root@linuxcool ~]$ xz -h | more
借助 xargs 命令并行压缩多文件:
[root@linuxcool ~]find /var/log -type f -iname "*.log" -print0 | xargs -p4 -n16 xz -t1