第六章文件压缩和打包

第六章 文件压缩和打包

6.1 压缩打包介绍

6.2 gzip压缩工具

6.3 bzip2压缩工具

6.4 xz压缩工具

6.5 zip压缩工具

6.6 tar打包

6.7 打包并压缩

6.8课堂笔记

 

6.1 压缩打包介绍

压缩文件类型
.zip    .gz     .bz2     .xz     .tar.gz    .tar.bz2      .tar.xz
 

6.2 gzip压缩    #(不能压缩目录

gzip压缩工具(.gz)
压缩
gzip   -(压缩级别1~9)   文件名         
#压缩级别默认6 ,级别越高,压缩越狠,耗费CPU资源越大
#压缩到一定程度无法再进一步压缩,因为已达到压缩极限 
[root@localhost d6z]# gzip 1.txt
[root@localhost d6z]# ls
1.txt.gz
 
gzip -c  文件名  >  目标目录      
#压缩该文件到目标目录,且文件不消失,保留在原目录 
# 文件命名后面要带上压缩文件类型(例:/tmp/d6z/1.txt.gz)
[root@localhost d6z]# gzip -c 1.txt > /tmp/d6z/1.txt.gz
[root@localhost d6z]# ls
1.txt  1.txt.gz
 
解压
gzip -d  文件名                                      #解压文件包消失
gunzip  文件名                                      #解压文件包消失
[root@localhost d6z]# ls
1.txt.gz
[root@localhost d6z]# gzip -d 1.txt.gz
[root@localhost d6z]# ls
1.txt
[root@localhost d6z]# gzip 1.txt
[root@localhost d6z]# ls
1.txt.gz
[root@localhost d6z]# gunzip 1.txt.gz
[root@localhost d6z]# ls
1.txt
 
 
gzip -d  -c  文件   > 目标目录           #解压该文件包到目标目录,且包不消失,保留在原目录
[root@localhost d6z]# gzip -d -c 1.txt.gz > /tmp/d6z/2.txt
[root@localhost d6z]# ls
1.txt  1.txt.gz  2.txt
 
查看
zcat  文件包            #查看压缩包内容
file    文件/包           #查看文件格式,大小等
[root@localhost d6z]# file 1.txt
1.txt: UTF-8 Unicode text, with very long lines
[root@localhost d6z]# file 1.txt.gz
1.txt.gz: gzip compressed data, was "1.txt", from Unix, last modified: Thu Aug  2 19:35:23 2018
 
du  -sh   文件     #查看大小        
wc  -l    文件      #查看行数
#将一个文件先压缩后再解压会发现内存显示变小了,但文件内容却不变,这是因为压缩文件会把文件里边的空隙挤压掉
 

6.3 bzip2压缩工具  #(不能压缩目录

bzip2压缩工具 (.bz2)  
yum install -y bzip2     #安装bzip2命令包
#与 gzip用法几乎一样
bzip2      -(压缩级别1~9)      文件   
[root@localhost d6z]# ls
1.txt  1.txt.gz  2.txt
[root@localhost d6z]# bzip2 1.txt
[root@localhost d6z]# ls
1.txt.bz2  1.txt.gz  2.txt
 
bzip2 -c  文件名  >  目标目录             #压缩该文件到目标目录,且文件不消失,保留在原目录
[root@localhost d6z]# bzip2 -c 1.txt > /tmp/d6z/1.txt.bz2
[root@localhost d6z]# ls
1.txt  1.txt.bz2  2.txt  
 
解压
bzip2 -d  文件名                                #解压文件包消失
[root@localhost d6z]# bzip2 -d 1.txt.bz2
[root@localhost d6z]# ls
1.txt  1.txt.gz  2.txt
 
bunzip2 文件名                                      #解压文件包消失
[root@localhost d6z]# bunzip2 1.txt.bz2
[root@localhost d6z]# ls
1.txt  2.txt  3.txt
 
bzip2 -d  -c  文件   > 目标目录           #解压该文件包到目标目录,且包不消失,保留在原目录
[root@localhost d6z]# bzip2 -d -c 1.txt.bz2 > /tmp/d6z/3.txt
[root@localhost d6z]# ls
1.txt  1.txt.bz2  2.txt  3.txt
 
#bzcat    包名       查看包内容
#bzip2压缩的比gzip更狠
 

6.4 xz压缩工具       #(不能压缩目录

xz压缩工具(.xz)    
#与 gzip用法几乎一样
#xz压缩的比bzip2更狠
压缩
xz   文件
xz -z  文件
[root@localhost d6z]# xz 1.txt
[root@localhost d6z]# xz -z 2.txt
[root@localhost d6z]# ls
1.txt.xz  2.txt.xz  3.txt.bz2
 
xz -c  文件名  >  目标目录             #压缩该文件到目标目录,且文件不消失,保留在原目录
[root@localhost d6z]# xz -c 1.txt > /tmp/d6z
-bash: /tmp/d6z: 是一个目录
[root@localhost d6z]# xz -c 1.txt > /tmp/d6z/4.txt.xz
[root@localhost d6z]# ls
1.txt  2.txt  3.txt.bz2  4.txt.xz
 
解压
xz -d  文件包                                      #解压文件包消失
unxz  文件包                                      #解压文件包消失
[root@localhost d6z]# xz -d 1.txt.xz
[root@localhost d6z]# unxz  2.txt.xz
[root@localhost d6z]# ls
1.txt  2.txt  3.txt.bz2
 
xz -d  -c  文件   > 目标目录           #解压该文件包到目标目录,且包不消失,保留在原目录
[root@localhost d6z]# xz -d -c 4.txt.xz > /tmp/d6z/4.txt
[root@localhost d6z]# ls
1.txt  2.txt  3.txt.bz2  4.txt  4.txt.xz
 
#xzcat  文件包             #查看包
 #一般解压文件消失
 

6.5 zip压缩工具

zip压缩工具(.zip)       #(能压缩目录
yum install -y zip      #安装
yum install -y unzip      #安装
 
zip  压缩包命名   文件                           #压缩完文件不消失
[root@localhost d6z]# zip 1.txt.zip 1.txt
  adding: 1.txt (deflated 75%)
[root@localhost d6z]# ls
123  1.txt  1.txt.zip  2.txt  3.txt.bz2  xin
 
zip  -r  压缩包命名   目录                      #压缩目录(可加文件一起压缩)
[root@localhost d6z]# zip -r 123.zip 123
  adding: 123/ (stored 0%)
[root@localhost d6z]# ls
123  123.zip  1.txt  1.txt.zip  2.txt  3.txt.bz2  xin
[root@localhost d6z]# zip -r xin.zip xin 2.txt 3.txt.bz2
  adding: xin/ (stored 0%)
  adding: 2.txt (deflated 75%)
  adding: 3.txt.bz2 (deflated 3%)
[root@localhost d6z]# ls
123  123.zip  1.txt  1.txt.zip  2.txt  3.txt.bz2  xin  xin.zip
 
unzip 文件包                    #解压       会询问是否覆盖/替换
[root@localhost d6z]# unzip 1.txt.zip
Archive:  1.txt.zip
replace 1.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
  inflating: 1.txt   
            
unzip  文件包  -d   目标目录          #指定解压目标目录(不能改名字,压缩前是什么名字,压缩后不变
[root@localhost d6z]# unzip xin.zip -d .
Archive:  xin.zip
replace ./xin/2.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
  inflating: ./xin/2.txt             
  inflating: ./xin/1.txt
查看包
unzip -l  文件包
[root@localhost d6z]# unzip -l 1.txt.zip
Archive:  1.txt.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
  2141470  08-02-2018 20:12   1.txt
---------                     -------
  2141470                     1 file
[root@localhost d6z]# unzip -l xin.zip
Archive:  xin.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  08-03-2018 19:47   xin/
  1499029  08-02-2018 19:50   2.txt
   205002  08-02-2018 20:13   3.txt.bz2
---------                     -------
  1704031                     3 files
 

6.6 tar打包

tar打包工具
tar -cvf  文件包  文件/目录            #打包
[root@localhost d6z]# tar -cvf xin3.tar xin3
xin3/
xin3/2/
xin3/xin/
xin3/xin/1.txt.bak
xin3/xin/2.txt.bak
xin3/xinalinux/
xin3/xinalinux/1/
xin3/xinalinux/1/2.txt
xin3/xinalinux/1/6890jj.sh
xin3/xinalinux/1.txt
xin3/xinalinux/1.tttx
 
tar -cvf  文件包  文件   目录       #可以文件和目录一起打包 (文件、目录不消失)
 [root@localhost d6z]# tar -cvf xin3.tar xin3 123 1.txt.zip
xin3/
xin3/2/
xin3/xin/
xin3/xin/1.txt.bak
xin3/xin/2.txt.bak
xin3/xinalinux/
xin3/xinalinux/1/
xin3/xinalinux/1/2.txt
xin3/xinalinux/1/6890jj.sh
xin3/xinalinux/1.txt
xin3/xinalinux/1.tttx
123/
1.txt.zip
 
tar -xvf 文件包       #解包,跳过询问,直接覆盖原来的文件(包不消失)
 
tar -tf  文件包                                     #查看包
[root@localhost d6z]# tar -tf xin3.tar
xin3/
xin3/2/
xin3/xin/
xin3/xin/1.txt.bak
xin3/xin/2.txt.bak
xin3/xinalinux/
xin3/xinalinux/1/
xin3/xinalinux/1/2.txt
xin3/xinalinux/1/6890jj.sh
xin3/xinalinux/1.txt
xin3/xinalinux/1.tttx
123/
1.txt.zip
 
tar  -cvf  文件包  --exclude  “*.txt”  --exclude  123     xin3   xin.zip
#过滤*.txt和123,将xin3目录和xin.zip打包
#--exclude “*.txt”     #过滤后缀为.txt的所有文件
[root@localhost d6z]# tar -cvf xinlinux.tar --exclude "*.txt" --exclude 123 xin3 xin.zip
xin3/
xin3/2/
xin3/xin/
xin3/xin/1.txt.bak
xin3/xin/2.txt.bak
xin3/xinalinux/
xin3/xinalinux/1/
xin3/xinalinux/1/6890jj.sh
xin3/xinalinux/1.tttx
xin.zip
 

6.7 打包并压缩

tar打包并压缩
.gz压缩包(zcvf、zxvf)
tar -zcvf 123.tar.gz  123         #将123打包并压缩为123.tar.gz   
tar -zxvf 123.tar.gz                    #解包
.bz2压缩包(jcvf、jxvf)
tar -jcvf 123.tar.bz2 123         #将123打包并压缩为123.tar.bz2  
tar -jxvf 123.tar.bz2                 #解包
.xz压缩包(Jcvf、Jxvf)   
tar -Jcvf 123.tar.xz 123         #将123打包并压缩为123.tar.xz
tar -Jxvf 123.tar.xz                  #解包
 
tar -tf 123.tar.bz2 / tar -tf 123.tar.gz / tar -tf 123.tar.xz            
 #三种包都支持tar  -tf       查看tar包
 

6.8课堂笔记

#tar打包没有压缩功能,只是把目录文件合并到一起
#gzip,bzip2,xz都不能压缩目录,zip可以压缩目录
 
# -c 表示创建新文件,所以需要命名文件
 
    tar打包
-c表示建立一个tar包或者压缩文件包
-f 后面加文件名 ,所以要写在最后面
-v表示可视化
-z 表示gzip压缩
-j表示bzip2压缩
-J表示xz压缩
-x表示解压
-C表示解压到指定目录(不用时默认指定到当前目录)
 
补充1:/etc/fstab文件注释
第一列:块设备
第二列:挂载点
第三列:文件类型
第四列:挂载选项(默认defaults,它代表包含了选项rw,suid,dev,exec,auto,nouser和 async)
第五列:是否备份,0不备份,1每天备份,2不定期备份
第六列:检验扇区 ,0不检验,1最先检验,21检验完后在检验
 
 
补充2:NAS、DAS、SAN最根本区别
NAS上面有文件系统
DAS、SAN  没有文件系统
 
补充3:raid知识(磁盘阵列)
 
raid总容量=以最小的为根基乘以磁盘数量
性能高,相对安全性低,成反比例
 
1. n代表硬盘总数
2. JBOD可接到现有硬盘,直接增加容量
posted @ 2018-08-10 16:49  最爱吃菜  阅读(196)  评论(0编辑  收藏  举报