tar、zip 、unzip 打包与压缩 (参考:http://pengyl.blog.51cto.com/5591604/1191197)

时间:2023-03-10 02:00:01
tar、zip 、unzip 打包与压缩 (参考:http://pengyl.blog.51cto.com/5591604/1191197)

通常都是先通过tar命令将多个文件或目录打包成一个包文件,然后再通过gzip或bzip2进行压缩,如*.tar.gz和*.tar.bz2就属于这种先打包再压缩的文件。在实际使用中,一般都是通过tar命令来调用gzip或bzip2进行压缩或解压,而很少去单独使用gzip或bzip2命令

root@linux ~]# tar -cvf /tmp/etc.tar /etc<==仅打包,不压缩!
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc<==打包后,以 gzip 压缩
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc<==打包后,以 bzip2 压缩

 

(查看所生成的包文件的大小 du -h home.tar)

1.压缩

1.1以 bzip2 压缩

[hujiande@whistle-200 ~]$ ll
total 12
-rw-r--r-- 1 hujiande wheel 246 Dec 11 14:50 if.sh
-rwxr--r-- 1 hujiande wheel 53 Dec 11 13:50 var.sh
-rw-r--r-- 1 hujiande wheel 145 Dec 11 15:22 while.sh
[hujiande@whistle-200 ~]$ tar -jcvf test.tar.bz2 if.sh var.sh #以tar.bz2形式压缩if.sh var.sh文件
if.sh
var.sh
[hujiande@whistle-200 ~]$ ll
total 16
-rw-r--r-- 1 hujiande wheel 246 Dec 11 14:50 if.sh
-rw-r--r-- 1 hujiande wheel 307 Dec 12 11:29 test.tar.bz2
-rwxr--r-- 1 hujiande wheel 53 Dec 11 13:50 var.sh
-rw-r--r-- 1 hujiande wheel 145 Dec 11 15:22 while.sh

1.2以 gzip 压缩

[hujiande@whistle-200 ~]$ tar -zcvf test.tar.gz if.sh while.sh #以tar.gz形式压缩if.sh var.sh文件
if.sh
while.sh
[hujiande@whistle-200 ~]$ ll
total 16
-rw-r--r-- 1 hujiande wheel 246 Dec 11 14:50 if.sh
-rw-r--r-- 1 hujiande wheel 326 Dec 12 12:10 test.tar.gz
-rwxr--r-- 1 hujiande wheel 53 Dec 11 13:50 var.sh
-rw-r--r-- 1 hujiande wheel 145 Dec 11 15:22 while.sh

 

2.解压

2.1.bz2

[hujiande@whistle-200 ~]$ mkdir test2
[hujiande@whistle-200 ~]$ tar jxvf test2.tar.bz2 -C test2

2.2.gz

[hujiande@whistle-200 test2]$ tar zxvf test.tar.gz

 

3.查看压缩文件内容

[root@localhost ~]# tar ztvf home.tar.gz | more

[root@localhost ~]# tar jtvf home.tar.bz2 | more

 

ZIP压解看

1.zip 压缩  zip -r yasuo.zip

2.zip 解压 unzip yasuo.zip

3.zip 查看压缩文件 unzip -v yasuo.zip