linux下的文件压缩方式比较

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/csfyx/article/details/85313919

        本文主要讨论linux下常见的各种文件解压缩方式,同时比较各类压缩方式的压缩率和压缩时间。

        一、我们来说说常见的压缩文件格式:

                .tar          tar 程序打包的资料,并没有压缩过;

                .gz          gzip 程序压缩的档案;

                .tar.gz     tar 程序打包的档案,其中并且经过 gzip 的压缩

                .bz2        bzip2 程序压缩的档案;

                .tar.bz2   tar 程序打包的档案,其中并且经过 bzip2 的压缩

                .Z            unix 档案压缩

                .zip         zip 程序压缩打包的档案; 

                .rar         rar 程序压缩打包的档案;

                .xz           xz 程序压缩的档案;

                .tar.xz     tar 程序打包的档案,其中并且经过 xz 的压缩 

                .7z          7zip 程序压缩打包的档案。

        二、常见解压缩命令:

               1、.tar

                 解包:tar xvf FileName.tar    

                 打包:tar cvf FileName.tar FileName

               2、.gz

                解压:gunzip FileName.gz

                压缩:gzip FileName(注:gzip 不能压缩目录只能压缩文件)

              3、.tar.gz

                解压:tar zxvf FileName.tar.gz

                压缩:tar zcvf FileName.tar.gz FileName

             4、.bz2

               解压:bzip2 -d FileName.bz2

               压缩:bzip2 -z FileName.tar.bz2

              5、.Z

               解压:uncompress FileName.Z

               压缩:compress FileName.Z

              6、.tgz

               解压:tar zxvf FileName.tar.tgz

               压缩:tar zcvf FileName.tar.tgz FileName

              7、.zip

               解压:unzip FileName.zip

               压缩:zip FileName.zip FileName

              8、.rar

               解压:rar e FileName.rar    

               压缩:rar a FileName.rar

              9、tar.xz 

               解压:  tar xvjf FileName.tar.xz

               压缩:   tar cvf FileName.tar FileName; xz -zFileName.tar

              10、7z

               解压: 7z x FileName.7z

               压缩: 7z a FileName.7z FileName

        三、压缩率和压缩时间比较:

root@ojlab:~$ du -s FileName/
6360000 FileName/
root@ojlab:~$ time tar zcf FileName.tar.gz FileName
real    5m20.915s
user    5m26.926s
sys     0m8.307s
root@ojlab:~$ time tar zcf FileName.tar.tgz FileName
real    5m21.044s
user    5m27.203s
sys     0m8.101s
root@ojlab:~$ time tar -jcf FileName.tar.bz2 FileName
real    12m12.725s
user    12m13.087s
sys     0m9.891s
root@ojlab:~$ time zip -r FileName.zip FileName
real    6m44.007s
user    6m33.764s
sys     0m8.367s
root@ojlab:~$ time rar a FileName.rar
real    4m41.960s
user    20m7.899s
sys     1m13.742s
root@ojlab:~$ time 7z a FileName.7z FileName
real    2m16.730s
user    55m33.900s
sys     0m19.131s
root@ojlab:~$ du -sh FileName*
6.1G    FileName
1.6G    FileName.7z
2.4G    FileName.rar
5.9G    FileName.tar
1.9G    FileName.tar.bz2
2.2G    FileName.tar.gz
2.2G    FileName.tar.tgz
2.8G    FileName.zip

              从以上数据可以明显的看出,压缩率: 7z > bz2 > gz > rar > zip,压缩时间:  7z < rar < gz < zip < bz2,综合来看,7z表现最好,但linux下使用的不是太多,而bz2虽然压缩率高但时间长,gz属于折中的考虑。

猜你喜欢

转载自blog.csdn.net/csfyx/article/details/85313919