LZMA压缩/解压缩工具命令行用法参考


原网址:http://blog.csdn.net/lihangde1990/article/details/22172525


听说了一个Graphicsmagick,一个从2002年发布的ImageMagick5.5.2版本分裂出去的图形处理包,和ImageMagick非常相近,而且命令兼容ImageMagick,但号称比ImageMagick更快的处理速度,去官方网站下载了一个包编译下,发现了官方网站提供三种压缩包下载: bzip2, gzip, lzmalzma这个格式以前没听说过,所以稍微研究了一下:主要参考了man手册。

 

LZMA  (Lempel-Ziv-Markov  chain-Algorithm)  基于著名的LZ77压缩算法改进的压缩/ 解压工具,特点:高压缩率,高 解压速度,低内存消耗, lzma命令行工具使用方式和gzip,bzip2类似,对已经熟悉gzip,bzip2这类工具的用户来说,上手并不难。
对比两大主流压缩工具:gzip,bzip2:
1, lzma和bzip2在速度上面远远输给gzip,但在压缩率方面, lzma算法占优势。
2, lzma拥有比gzip,bzip2更高的压缩比率,压缩后文件更小,纯文本文件压缩更加明显,在 解压方面比bzip2速度快出数倍,对于想要有较高的压缩率,又不想消耗太多内存, lzma是首先。
3,文件属性, lzma压缩和 解压缩能保持文件所有人,权限和修改时间等信息,但是gzip不保存这些信息。

速度:    bzip2 <  lzma < gzip
压缩率: gzip   < bzip2 <  lzma
文件信息:gzip 不保留, bzip2 ,  lzma 保留
这么看来,好像没有太多理由再用 bzip2 了?呵呵,不过bzip2仍是我的最爱,目前还没有办法一下子接受 lzma
虽然 lzma很优秀,但我已经习惯了 tar cjvf 和 tar xjvf 了!

lzma在绝大多数Linux和Unix系统中默认安装。

几个主要参数:
    -d --decompress --uncompress     
        指定 解压缩,比如  lzma  -d test. lzma,该命令相当于 unlzma test. lzma
    -f --force
        强制 解压/压缩,忽略一切问题,比如:目标文件已经存在,直接覆盖等。
    -h --help
        显示帮助
    -k --keep
        不删除原始文件,
    -t --test
        测试,不 解压
    -v --verbose
        显示进度等信息,
    -z --compress
        强制压缩

用法示例:
    压缩文件:
     lzma  test.tar
        压缩后生成: lzma.tar. lzma 并且原文件 test.tar会被删除,要想保留,添加 -k 选项
             lzma -k test.tar
     解压
     lzma -d test.tar. lzma 或 unlzma test.tar. lzma
        解压
后 test.tar. lzma默认被删除,如果想保留,添加-k选项,
    
    如果目标文件已经存在, lzma不会覆盖,而报错退出执行,
    添加 -f忽略:
     lzma -kf test.tar
        覆盖已经存在的  lzma.tar. lzma 同时保留原文件 test.tar
    
     解压
     lzma -dkf test.tar. lzma
        覆盖已经存在的 test.tar 同时保留 test.tar. lzma
生成的压缩文件使用的压缩算法 是LZMA:23

你可能感兴趣的:(Linux)