一、文件与文件系统的压缩:
1、单文件的四种压缩命令:
①、Compress (过时了,不做过多说明)
②、gzip,zcat (gzip:压缩。zcat:查看)
③、bzip2,bzcat (bzip:压缩。bzcat:查看)
④、zip (zip:压缩。unzip:解压)
2、gzip,zcat 组合。
不保留源文件压缩:gzip file
保留源文件压缩:gzip -c file > file.gz
查看压缩比例并压缩文件:gzip -v file
查看压缩文件里面的内容:zcat file.gz
解压命令:gzip -d file.gz
1 [root@localhost opt]# gzip -c hosts > hosts.gz
2 [root@localhost opt]# ls
3 hosts hosts.gz
4 [root@localhost opt]# rm -f hosts.gz
5 [root@localhost opt]# ls
6 hosts
7 [root@localhost opt]# gzip hosts
8 [root@localhost opt]# ls
9 hosts.gz
10 [root@localhost opt]# zcat hosts.gz
11 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
12 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
13 [root@localhost opt]# gzip -d hosts.gz
14 [root@localhost opt]# ls
15 hosts
16 [root@localhost opt]#
3、bzip2,bzcat 组合。压缩方法和上面一样<注意后缀名>
不保留源文件压缩:bzip2 file
保留源文件压缩:bzip2 -c file > file.bz2
查看压缩比例并压缩文件:bzip2 -v file
查看压缩文件里面的内容:bzcat file.bz2
解压命令:bzip2 -d file.bz2
4、zip 压缩文件。<不管压缩与解压,都会保留源文件>
压缩文件:zip file.zip file
解压文件:unzip file.zip
二、多文件和文件系统的打包(归档):命令: tar (注意:文件的的归档不是压缩)
参数:
c: 创建一个归档文件
v: 显示创建归档的一个过程
f: 指明归档之后文件的名字
t: 查看归档文件
x: 解压归档文件(默认解压在当前文件夹)
C: 解压归档文件(指定解压到任意目录)
1、单文件归档:
保留源文件归档:tar cvf aa.tar file
不保留源文件归档:tar cvf aa.tar file --remove-files 或 tar cvf aa.tar file --remove-file
查看一个归档文件:tar tvf aa.tar
解压一个归档文件:tar xvf aa.tar
1 [root@localhost opt]# ls 2 hosts 3 [root@localhost opt]# tar cvf aa.tar hosts 4 hosts 5 [root@localhost opt]# ls 6 aa.tar hosts 7 [root@localhost opt]# rm -f aa.tar 8 [root@localhost opt]# tar cvf aa.tar hosts --remove-file 9 hosts 10 [root@localhost opt]# ls 11 aa.tar 12 [root@localhost opt]# tar tvf aa.tar 13 -rw-r--r-- root/root 158 2017-05-21 16:13 hosts 14 [root@localhost opt]# tar xvf aa.tar 15 hosts 16 [root@localhost opt]# ls 17 aa.tar hosts 18 [root@localhost opt]#
2、多文件归档:
保留源文件归档:tar cvf yy.tar file1 file2 file3
不保留源文件归档:tar cvf yy.tar file1 file2 file 3 --remove-file
查看归档文件里面的文件:tar tvf yy.tar
解压归档文件里面的所有内容:tar xvf yy.tar
解压归档文件里面的部分内容:tar xvf yy.tar file2 (解压归档文件里面的文件file2)
注意:归档文件的时候可以跨文件夹归档,解压归档文件的时候没有试过跨文件夹归档
1 [root@localhost opt]# ls 2 hosts passwd services 3 [root@localhost opt]# tar cvf yy.tar hosts passwd services 4 hosts 5 passwd 6 services 7 [root@localhost opt]# ls 8 hosts passwd services yy.tar 9 [root@localhost opt]# rm -f yy.tar 10 [root@localhost opt]# ls 11 hosts passwd services 12 [root@localhost opt]# tar cvf xx.tar hosts passwd services --remove-file 13 hosts 14 passwd 15 services 16 [root@localhost opt]# ls 17 xx.tar 18 [root@localhost opt]# tar tvf xx.tar 19 -rw-r--r-- root/root 158 2017-05-21 16:13 hosts 20 -rw-r--r-- root/root 2235 2017-05-21 16:13 passwd 21 -rw-r--r-- root/root 670293 2017-05-21 16:13 services 22 [root@localhost opt]# tar xvf xx.tar 23 hosts 24 passwd 25 services 26 [root@localhost opt]# ls 27 hosts passwd services xx.tar 28 [root@localhost opt]# rm -f hosts passwd services 29 [root@localhost opt]# ls 30 xx.tar 31 [root@localhost opt]# tar xvf xx.tar hosts 32 hosts 33 [root@localhost opt]# ls 34 hosts xx.tar 35 [root@localhost opt]#
三、tar 命令进行文件的压缩(tar本身是没有压缩功能的):------>该方法可以极大的减少压缩文件的大小
调用:gzip 或bzip2 来进行压缩和解压
1、调用gzip 压缩:tar jcvf mm.tar.bz2 hosts passwd services
调用gzip解压所有文件:tar jxvf mm.tar.bz2
调用gzip解压里面的单个文件:tar jxvf mm.tar.bz2 hosts
把 mm.tar.bz2 文件里面的内容解压到文件夹aa目录下面:tar jxvf mm.tar.bz2 -C aa/
2、调用gzip压缩和解压:(把上面的 "jxvf" --->zxvf)
调用gzip 压缩:tar jcvf mm.tar.bz2 hosts passwd services
调用gzip解压所有文件:tar jxvf mm.tar.bz2
调用gzip解压里面的单个文件:tar jxvf mm.tar.bz2 hosts
把 mm.tar.bz2 文件里面的内容解压到文件夹aa目录下面:tar jxvf mm.tar.bz2 -C aa/