【Linux学习笔记(十八)】之 压缩,打包 zip,gz, bz2, tar,tar.gz, tar.bz2

本文章由公号【开发小鸽】发布!欢迎关注!!!


老规矩–妹妹镇楼:

一. 压缩与解压缩命令

(一) .zip

        .zip是Windows中最常用的压缩格式,Linux可以和Windows通用压缩文件。

1. zip

        压缩命令是zip,在/usr/bin/zip中,用于压缩文件或目录。命令的格式如下:

zip [选项] 压缩包名 源文件或源目录

        -r 压缩目录

zip ana.zip anaconda-ks.cfg

2. unzip

        解压缩命令,在/usr/bin/unzip中,命令格式如下:

unzip [选项] 压缩包名

        -d 指定解压缩位置,不指定位置的话就是在当前目录下

unzip -d /tmp ana.zip

(二) .gz

1. gz

        Linux中最常用的压缩格式,在/bin/gzip中,能够压缩文件或目录,但是它不会打包,不能将多个文件或者目录压缩成一个。命令格式如下:

gzip [选项] 源文件

        -c: 将压缩数据输出到标准输出中,可以用于保留源文件

        -d: 解压缩

        -r: 压缩目录

        由于gz压缩文件后,源文件就会消失,因此使用-c选项,将压缩数据重定向到压缩文件中,这样源文件就不会被删除了:

gzip -c anaconda.cfg > anaconda.cfg.gz

2. gunzip

        解压缩命令,在/bin/gunzip中,只能解压缩到当前目录:

gunzip anaconda.cfg.gz

(三) .bz2

1. bzip2

        bz2压缩比更好,gz压缩时间更快,但是bz2不能压缩目录。bzip2压缩命令再/usr/bin/bzip2中,命令格式如下:

bzip2 [选项] 源文件

        -d : 解压缩

        -k: 压缩时保留源文件

        -v: 显示压缩的详细信息

bzip2 anaconda.cfg
bzip2 -k anaconda.cfg

2. bunzip2

        解压缩命令,在/usr/bin/bunzip2中,也是直接解压到当前目录:

bunzip2 anaconda.cfg.bz2

二. tar命令

(一) .打包

        tar命令只会打包不会压缩,即将多个文件打包为一个文件。在/bin/tar中,命令如下所示:

tar [选项] [-f 压缩包名] 源文件或目录

        -c: 打包

        -f: 指定压缩包的文件名

        -v: 显示打包文件过程

tar -cvf anaconda.cfg.tar anaconda.cfg

(二) 解打包

        同样使用tar命令,只是改变了选项:

        -x: 解打包

        -f: 指定包的文件名

        -v: 显示解打包文件过程

        -t: 测试,只是查看包中的文件有哪些,并不会解打包

        -C: 指定解打包位置

tar -xvf anaconda.cfg.tar
tar -xvf anaconda.cfg.tar -C /tmp

三. tar.gz 和 tar.bz2

        通常情况下,我们会先打包,再压缩。即先调用tar命令,再调用gz或者bzip2命令,这样非常繁琐。于是,还是使用tar命令,但是有了直接打包压缩的命令选项:

        -z: 打包压缩为 tar.gz格式

        -j: 打包压缩为 tar.bz2格式

打包压缩与解压缩

tar -zcvf tmp.tar.gz /tmp
tar -zxvf tmp.tar.gz 

只查看,不解压

tar -ztvf test.tar.gz 

解压缩到指定位置

tart -zxvf test.tar.gz -C /tmp

查看压缩文件中的内容后,指定解压缩特定文件到指定位置

tar -zxvf test.tar.gz -C /tmp test/code

        注意,这个指定目录的选项只能放在其他选项之后!!!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值