其他分享
首页 > 其他分享> > 基础day20

基础day20

作者:互联网

文件压缩

为什么使用压缩

 文件或目录太大,需要压缩传输
 以后学的服务安装包都需要解压

压缩格式及命令

格式Linux命令
.zip zip
.gz gzip
.tar tar
.tar.gz tar.gz

压缩命令-gzip

 # 安装gzip命令
 [root@localhost ~]# yum install -y gzip
 ​
 # gzip命令使用
 gzip 普通文件名
 -r:递归压缩目录下的所有文件,每个文件会被压缩成单独一个包
 ​
 ​
 # 特性
 1.压缩文件后,源文件不存在
 2.只能压缩文件,不能压缩目录
 3.压缩后,压缩包的位置在源文件的目录下
 4.压缩包可以直接查看文件内容 zcat
 5.一个压缩包中,只会有一个文件
 6.解压后,压缩包没了,只剩源文件
 ​
 # 例:
 [root@localhost ~]# gzip lza.txt
 [root@localhost ~]# ll
 total 4
 -rw-r--r--. 1 root root 24 Apr 18 15:58 lza.txt.gz
 [root@localhost ~]# zcat lza.txt.gz
 111
 222
 333
 ​
 # -r:
 [root@localhost ~]# gzip -r .
 [root@localhost ~]# ll
 total 8
 -rw-r--r--. 1 root root 36 Apr 18 16:04 lza1.txt.gz
 -rw-r--r--. 1 root root 40 Apr 18 16:01 lza.txt.gz
 ​
 ​
 # 解压命令
 gzip -d 压缩包名
 ​
 [root@localhost ~]# gzip -d lza.txt.gz
 [root@localhost ~]# ll
 total 4
 -rw-r--r--. 1 root root 12 Apr 18 16:01 lza.txt
 ​

压缩命令-zip

 # 安装zip和unzip命令
 [root@localhost ~]# yum install -y zip
 [root@localhost ~]# yum install -y unzip
 ​
 ​
 # zip命令
 zip 压缩包名 文件
                          压缩包名     需要放入压缩包的文件
 [root@localhost ~]# zip   txt.zip     1.txt 2.txt 3.txt
 ​
 # 压缩并指定位置
 [root@localhost ~]# zip /opt/lza.zip 1.txt 2.txt 3.txt
 ​
 # 特性
 1.压缩文件后,源文件存在
 2.可以指定压缩包后保存的路径
 3.可以压缩目录,也可以压缩文件,也可以指定多个文件一起压缩
 4.压缩目录需要加选项,如果不加,压缩后,只有一个空目录,没有里面的文件
 5.解压后,压缩包不会消失,如果同一目录下出现同名文件则询问是否要覆盖
 ​
 # 选项
 -r:递归压缩,包括目录下的所有文件
 [root@localhost ~]# zip -r lza.zip lza/
 ​
 -q:quiet静默输出,不输出压缩的过程
 ​
 ​
 # 解压命令
 unzip 压缩包名
 [root@localhost ~]# unzip lza.zip
 ​
 -l:查看压缩包里面都有那些文件
 [root@localhost ~]# unzip -l lza.zip
 ​
 -d:指定解压路径
 [root@localhost ~]# unzip zls.zip -d /tmp

压缩命令-tar

 tar命令本身是归档
 ​
 # 选项
 c:归档
 f:指定压缩包名
 z:使用gzip把归档文件压缩
 v:显示压缩/解压的过程
 x:解压归档文件
 C:指定解压的位置
 t:查看压缩包里的文件都有哪些
 j:使用bzip2压缩文件
 J:压缩成.xz包
 h:打包软链接(如果软链接文件是绝对路径,那么不加h打包出来的文件会失效)
 P:压缩时带绝对路径,解压时按绝对路径解压
 X:排除指定的文件
 --exclude:排除指定文件
 --hard-dereference:打包硬链接文件
 ​
 # 例:
 # 压缩文件,指定压缩包路径,源文件还在
 [root@localhost ~]# tar zcvf /tmp/lza.tar.gz .
 ./
 ./.bash_logout.gz
 ./.bash_profile.gz
 ./.cshrc.gz
 ./.tcshrc.gz
 ./.bash_history.gz
 ./.bashrc.gz
 ./.zls.gz
 ./.viminfo.gz
 ./lza.txt
 ./lza1.txt
 [root@localhost ~]# ll /tmp/
 total 4
 -rw-r--r--. 1 root root 2045 Apr 18 16:13 lza.tar.gz
 ​
 [root@localhost ~]# tar tf /tmp/lza.tar.gz
 ​
 # 解压,指定路径,且压缩包还在
 [root@localhost ~]# tar xf /tmp/lza.tar.gz -C /tmp/
 [root@localhost ~]# ll /tmp/
 total 12
 -rw-r--r--. 1 root root    7 Apr 18 16:04 lza1.txt
 -rw-r--r--. 1 root root 2045 Apr 18 16:13 lza.tar.gz
 -rw-r--r--. 1 root root   12 Apr 18 16:01 lza.txt
 ​
 ​
 # 特性
 1.压缩文件后,源文件存在
 2.目录和文件都可以压缩
 3。压缩后,压缩包的位置可以指定任意目录
 [root@localhost ~]# tar zcf /tmp/lza.tar.gz /opt /tmp
 4.可以查看压缩包里有那些文件,但是看不了文件内容
 [root@localhost ~]# tar tf /tmp/lza.tar.gz
 5.一个压缩包中,可以有多个文件或目录
 6.解压后,压缩包还在,源文件也可以随意指定路径 -C
 7.使用zcf压缩,zxf解压
  使用jcf压缩,jxf解压
  使用Jcf压缩,Jxf解压
   
  万能解压:xf
 ​
 ​
 # 注意
 1.tar命令在解压开文件时,如果有文件名冲突,则不会询问,直接覆盖
 2.tar命令,在打包时,会自动删除绝对路径的 /
 3.以后打包,尽量使用相对路径,cd到需要打包命令或文件的上级目录
 [root@localhost ~]# cd /
 [root@localhost /]# tar zcf /tmp/opt.tgz opt/

标签:tar,基础,day20,gz,压缩包,lza,root,localhost
来源: https://www.cnblogs.com/LZA1218/p/16182528.html