作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
在 Linux 中,常用的打包和解压缩工具主要有 tar
, gzip
, bzip2
, zip
, unzip
等。下面我会简要介绍它们的基本用法和常见选项。
在Windows系统用得比较多的还有rar格式,甚至可以通过安装扩展包来支持。
打包和压缩文件
1. 使用 tar
打包和压缩:
打包文件(不压缩):
tar cvf archive.tar file1 file2 file3
-
c
:创建新的打包文件。v
:显示详细的过程(可选)。f archive.tar
:指定打包后的文件名。
压缩为
.gz
格式:
tar cvzf archive.tar.gz directory
-
z
:使用 gzip 压缩。f archive.tar.gz
:指定压缩后的文件名。
压缩为
.bz2
格式:
tar cvjf archive.tar.bz2 directory
-
j
:使用 bzip2 压缩。
2. 使用 gzip
和 bzip2
直接压缩文件:
gzip 压缩:
gzip filename
会生成 filename.gz
文件,原文件会被删除。
bzip2 压缩:
bzip2 filename
会生成 filename.bz2
文件,原文件会被删除。
解压缩文件
1. 使用 tar
解压缩:
解压
.tar
文件:
tar xvf archive.tar
-
x
:提取文件。v
:显示详细的过程(可选)。f archive.tar
:指定要解压的文件名。
解压
.tar.gz
文件:
tar xvzf archive.tar.gz
#其实我一般都用xvf参数
tar xvf archive.tar.gz
-
z
:使用 gzip 解压。
解压
.tar.bz2
文件:
tar xvjf archive.tar.bz2
-
j
:使用 bzip2 解压。
2. 解压 .gz
和 .bz2
格式的文件:
如果是Centos7 默认mini安装是默认不带个命令的.
解压
.gz
文件:
zip -d filename.gz
或者使用 gunzip
命令:
gunzip filename.gz
解压
.bz2
文件:
bzip2 -d filename.bz2
或者使用 bunzip2
命令:
bunzip2 filename.bz2
3. 解压 .zip
文件:
如果是Centos7 默认mini安装是默认不带个命令的.
解压
.zip
文件
unzip archive.zip
注意事项:
使用
tar
命令时,选项的顺序很重要,通常f
应该是最后一个选项,并且后面紧跟文件名。对于
gzip
和bzip2
,原始文件在压缩完成后会被删除,只留下压缩文件。使用
unzip
命令解压.zip
文件时,会将文件解压到当前目录。
总结
打包和压缩是可以分开的。
最常用的就是
tar
和zip。
打包和解压是可能会把源文件删除的。
打包的时候要注意打包是目录还是文件。
解压的时候,可能会把压缩包里面的文件解压到当前目录(如果压缩包里面的文件和目录非常多,而本地目录和文件就容易引起混乱,甚至本地有同名的文件和目录,甚至会覆盖掉文件),所以要养成良好的习惯。
zip
和 unzip 在默认最小化安装的系统中,是不自带的,需要手工安装。
关注微信公众号《运维小路》获取更多内容。