Linux教程之文件归档和压缩(tar、file、zip)(2)

[root@linuxidc ~]# du -sh aa.tar
20K aa.tar
[root@linuxidc ~]# ll -h /home/berners/aa.tar
-rw-r--r-- 1 root root 20K 8月 14 11:22 /home/berners/aa.tar
[root@linuxidc ~]#  

2. tar  归档 + 压缩

gzip  bzip2  zip tar

一、压缩格式:gz, bz2, xz, zip, Z

格式(文件名格式): .tar.gz  或  .tgz

语法格式:tar  zcvf  newfile.tar.gz  SOURCE

root@xuegod61 ~]# tar zcf aa.tar.gz /home/berners/    #压缩

2.1 比较tar zcf 压缩前后文件的大小。

[root@linuxidc ~]# ll -h aa.tar*

-rw-r--r-- 1 root root 20K 8月 14 10:37 aa.tar   //压缩前20k。
-rw-r--r-- 1 root root 3.7K 8月 14 12:51 aa.tar.gz //压缩后3.7k。

用tar zcf压缩文件, 压缩前(20k)/压缩后(3.7k) = 5.4 倍。

可能你要说我的文件比较小,那我来弄一个大的文件比较一下:

[root@linuxidc ~]# du -sh share.tar*
1.2G share.tar
457M share.tar.gz
[root@linuxidc ~]#

 这个文件比较大,压缩前和压缩后比率为 1.2*1024/457 = 2.69 倍。

结论:tar zcf 这个压缩比率还是很低的。而且文件越大,越缩比率越低。

2.2 解压

语法格式:tar zxvf xx.tar.gz  .

v可以省略,v用来表示操作过程是否显示。

[root@linuxidc ~]# tar zxf aa.tar.gz -C /home/lisi
[root@linuxidc ~]# ls -l /home/berners
total 36
-rw-r--r-- 1 root root 20480 8月 14 11:22 aa.tar
-rwxr-xr-x 1 root root 8547 8月 13 19:46 a.out
-rw-r--r-- 1 dabai xiaobai 0 8月 10 07:27 touch.txt
-rw-r--r-- 1 root root 143 8月 13 12:23 who.out
[root@linuxidc ~]# ls -l /home/lisi
total 0
drwxr-xr-x 3 root root 20 8月 14 13:31 home
[root@linuxidc ~]# cd home
[root@linuxidc home]# ls
berners
[root@linuxidc home]# cd berners
[root@linuxidc berners]# ls -l
total 36
-rw-r--r-- 1 root root 20480 8月 14 11:22 aa.tar
-rwxr-xr-x 1 root root 8547 8月 13 19:46 a.out
-rw-r--r-- 1 dabai xiaobai 0 8月 10 07:27 touch.txt
-rw-r--r-- 1 root root 143 8月 13 12:23 who.out

3. 归档+压缩 :bz2

格式(文件名格式): .tar.bz2

语法格式:tar  jcvf  newfile.tar.bz2  SOURCE

4. zip软件包解压缩命令 4.1 zip是压缩程序,unzip是解压程序。

压缩文件

[root@localhost ~]# zip passwd.zip /etc/passwd

-r  压缩目录

格式”zip 选项 名称  源”

[root@localhost ~]# zip -r grub2.zip /boot/grub2/

[root@localhost ~]# ll -h grub2.*

-rw-r--r-- 1 root root 7.7M Feb 17 07:40 grub2.tar

-rw-r--r-- 1 root root 2.5M Feb 17 08:02 grub2.tar.bz2

-rw-r--r-- 1 root root 3.1M Feb 17 07:56 grub2.tar.gz

-rw-r--r-- 1 root root 3.2M Feb 17 08:11 grub2.zip

4.2 解压

[root@localhost ~]# unzip grub2.zip -d /opt/

-d指定路径

Linux下如何解压.tar.bz2格式的压缩包 老版本的linux要两步,一步是解压缩,一步是解包
bzip2 -d **.tar.bz2 //将文件解压成**.tar
tar -xf **.tar //解包
现在新出的linux版本,只要一步就可以解压完毕
tar -xf **.tar.bz2

linux下tar.gz、tar、bz2、zip等解压缩、压缩命令小结

Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进 行压缩了,所以首先就来讲讲tar命令的基本用法:
tar命令的选项有很多(用man tar可以查看到),但常用的就那么几个选项,下面 来举例说明一下:
# tar -cf all.tar *.jpg
这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
# tar -rf all.tar *.gif
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
# tar -uf all.tar logo.gif
这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/13704.html