本文章由公号【开发小鸽】发布!欢迎关注!!!
老规矩–妹妹镇楼:
一. 压缩与解压缩命令
(一) .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.cfgbzip2 -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.tartar -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 /tmptar -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
注意,这个指定目录的选项只能放在其他选项之后!!!