linux基础

Linux文件压缩与解压-day17

2020-03-19  本文已影响0人  Linux运维

1.文件压缩的定义
2.对文件压缩的原因
3.Windows和Linux压缩如何互通
4.Linux下常见压缩类型

一、文件压缩的定义

文件压缩就是将多个文件或目录合成一个特殊的文件

二、对文件压缩的原因

1.压缩前后,文件大小不一样
2.压缩后文件的传输速度更快,效率高

PS:就像搬家一样,打包后搬取物品,明显比一件一件的搬取更快,效率更高

三、Windows和Linux压缩如何互通

windows对压缩文件的类型是不挑的,Linux就很挑了,Linux常用的是 .zip 和 .tar.gz 这两种类型。所以windows最好用 .zip 压缩类型,这样两边就能互通了。

四、Linux常见压缩类型

gzip+想要压缩的文件(单个)
特点:
①只能对文件进行压缩
②压缩完之后,源文件会消失
③只能对单个文件进行压缩,不支持多个
④可以让文件失效,相当于注释

选项:-d 解压
查看压缩包内容(不解压):zcat 命令

zip+压缩文件名+想要压缩的文件或目录(可以多个)

特点:
①支持多个文件或目录进行压缩(打包目录下的所有内容,需要递归 -r
②压缩完之后,不删除源文件
③可以指定压缩到什么位置,并且可以命名(*.zip
④默认压缩到当前目录
⑤可以指定解压到什么位置

  #选项:
  -l      不解压显示压缩包内的所有文件
  -r      递归压缩多个文件或目录
  -T      验证压缩包是否完整    
  -d      用来指定解压到什么位置
  -q      压缩文件是不显示处理信息

解压:unzip

[root@10 ~]# unzip user.zip -d /tmp

查看压缩包内所有文件(不解压):
unzip -l

检查压缩文件是否正确:
unzip -t
zip -T

tar命令+选项+压缩文件名+想要压缩的文件或目录

特点:
①支持多个文件或目录进行压缩
②压缩完之后,不删除源文件
③可以指定压缩到什么位置,并且可以命名
④默认压缩到当前目录
⑤可以指定解压到什么位置

  #常用结合选项:
  czf    对文件或目录进行压缩,压缩文件名后缀为 .tar.gz
  cjf    对文件或目录进行压缩,压缩文件名后缀为 .tar.bz2
  cJf    对文件或目录进行压缩,压缩文件名后缀为 .tar.xz(用的不多)
  tf     不解压查看压缩包内容
  xf     智能解压
  -C     指定解压到什么位置

写法:

[root@10 ~]# tar czf test.tar.gz test.txt

与 find 结合使用:

#第一种
[root@10 ~]# find /tmp -type f |xargs tar czf tmp.tar.gz
#第二种,() 括号中优先执行
[root@10 ~]# tar czf tmp2.tar.gz $(find /tmp -type f)

打包链接文件

#打包链接文件的真实文件,需要选项加 h
[root@10 ~]# tar czfh bin.tar.gz /bin

排除文件,并打包压缩

#排除的单个和多个文件    --exclude= (多个的时候比较鸡肋)
[root@10 ~]# tar czf etc.tar.gz --exclude=/etc/services /etc  # 放在要打包目录之前(过滤)

#将需要排除的文件写入文件中 (高)
[root@10 ~]# vim paichu.txt
[root@10 ~]# tar czf want.tar.gz paichu.txt /etc

小结:
1.解压对删除文件的恢复,通过指定解压路径来恢复(根据情况,/ 路径或全路径)
2.压缩时,为了不出现--tar: 从成员名中删除开头的“/”,可以用 cd 切换目录,再压缩

上一篇 下一篇

猜你喜欢

热点阅读