linux中的压缩解压命令(centos 7)

1、zip命令
zip命令将目录或文件压缩成zip格式,使用格式如下:
通过zip压缩文件的目标文件可以不写指定扩展名,默认扩展名为zip。

在这里插入代码片压缩文件:zip -r(必须加此参数) 目标文件 源文件
解压文件:unzip -d 解压后目录文件 压缩文件
注意:目标文件可加zip也可不加,-d后面跟解压到的目的地,没有-d默
认为当前目录

zip参数:

-r 递归处理,将指定目录下的所有文件和子目录一并处理,不然子目录只压出来一个空目录
-m 建立压缩文件后,自动删除原始文件

unzip参数:

-d 解压到指定目录下
-t 检查zip文件是否损坏,但不解压
-l 查看压缩的内容,但不解压
-Z 相当于ls -l查看,但不解压
-v 查看压缩的内容的详细信息,但不解压

例:
在这里插入图片描述
1、tar命令
tar这个命令并没有压缩的功能,它只是一个打包的命令,但是在tar命令中增加一个选项(-z)可以支持gzip解压文件,在tar命令中增加一个选项(-j)可以支持bzip2解压文件,所以可以实行一个先打包后压缩的过程。

tar的参数:

-c 建立一个压缩文件(create的意思)
-x 解开一个压缩文件
-t 查看压缩文件里面的文件
注意: c/x/t 同时只能存在一个
-v 压缩的过程中显示文件
-z 是否需要用gzip压缩
-j 是否需要用bzip2压缩
-f 指定存档文件,与其他选项同时使用时,必须在最后
-r 添加文件到已经压缩的文件
-p:使用原文件的原来属性(属性不会依据使用者而变)
-C 解压到指定目录
--exclude FILE 在压缩的过程中,不要将 FILE 打包
-N 比后面接的日期(yyyy/mm/dd)要新的才会被打包进新建的文件中

例1:将整个/etc目录下的文件全部打包到tmp目录中,打包为etc.tar

$tar -cvf /tmp/etc.tar /etc        #仅打包,不压缩
$tar -czvf /tmp/etc.tar.gz /etc    #打包后,以gzip压缩
$tar -cjvf /tmp/etc.tar.bz2 /etc   #打包后,以bzip2压缩

注意,在参数f之后的文件档名是自定义的,习惯上都用 .tar 来作为辨识。
如果加z参数,则以.tar.gz或.tgz来代表gzip压缩过的压缩文件;如果加j参数,则以.tar.bz2来作文件名。在知道用什么方法压缩的时候后缀可以不写,但是不写后缀在解压的时候我们就不知道用什么参数解压了。
例2:查阅上述/tmp/etc.tar.gz文件内容

$tar -ztvf /tmp/etc.tar.gz  
#使用了gzip压缩,所以要查阅压缩文件时得要加上z参数

例3:将/tmp/etc.tar.gz文件解压缩

$tar -zxvf /tmp/etc.tar.gz

例4:将/tmp/etc.tar.gz文件解压缩到/data目录下

$tar -zxvf /tmp/etc.tar.gz -C /data

例5:将etc.tar.gz解压到/usr/local/src

$cd /usr/local/src
$tar -zxvf /tmp/etc.tar.gz

我们可以将压缩文件在任何地方解开,首先我们将目录变换到/usr/local/src底下,并且解开/tmp/etc.tar.gz,则解开的文件会在/usr/local/src中。
例6:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 1.c解开而已

# tar -zxvf /tmp/etc.tar.gz ./1.c

我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件,
就可以透过这个方式来下达。
例7:将 etc.tar.gz 内的所有文件备份下来,并且保存其权限!

# tar -zxvpf /tmp/etc.tar.gz

这个 -p 的属性是很重要的,尤其是当你要保留原本文件的属性时!
例8:在 /home 当中,比 2020/04/01 新的文件才备份

# tar -N "2020/04/01" -zcvf home.tar.gz /home

例9:我要备份 /home, /etc ,但不要 /home/dmtsai

# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

例9:我要备份 /home, /etc ,但不要 /home/1.c和/home/2.c

# tar --exclude=/home/1.c --exclude=/home/2.c -zcvf myfile.tar.gz /home/* /etc
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值