今天呢,把Linux的压缩命令整理一下,分享一下。
首先说一下,在Linux里的压缩格式吧(也可以说是格式,这个格式呢,是为了方便用户辨别的。)
- .zip
- .gz
- .bz2
- .tar.gz
- .tar.bz2
.zip
这个 .zip 呢,有没有很眼熟的样子。是的,它就是可以在 windows 上可以用的那种压缩格式。也就说,这种文件在 Linux 下和 windows 下是一样的。
命令如下:
zip 压缩文件名 源文件 #压缩文件
zip -r 压缩文件名 源目录 #压缩目录
unzip 压缩文件名 #解压缩
PS:
Linux下,把文件夹称为目录,压缩目录就是把整个文件夹全部压缩。
.gz
命令如下:
gzip 源文件
#源文件消失,生成 源文件名.gz 的压缩文件
gzip -c 源文件 > 压缩文件
gzip -r 目录
#将目录下的子文件压缩成对应的 .gz 压缩文件
gzip -d 压缩文件
#解压缩命令
gunzip 压缩文件
#解压缩命令
PS:
gzip 命令不能支持把整个目录压缩成文件。
.bz2
命令如下:
bzip2 源文件 #压缩并不保留源文件
bzip2 -k 源文件 #压缩并保留源文件
bzip2 -d 压缩文件 #解压缩并不保留压缩文件
bzip2 -k 压缩文件 #解压缩并保留压缩文件
bunzip2 压缩文件 #解压缩并不保留压缩文件
bunzip2 -k 压缩文件 #解压缩并保留压缩文件
PS:
.bz2 命令完全不支持目录压缩。
PS:
针对 gzip 和 bzip2 命令不能很好支持压缩目录,却可以很好的支持压缩文件,所以解决这样的问题,可以把目录转换成文件,接下来就可以很好的压缩了。
打包命令,把目录 -> 文件
命令如下:
tar -cvf 打包文件名 源目录
选项: -c 打包
-v 显示过程
-f 指定打包后的文件
例如:
tar -cvf test.tar ./test/
tar -xvf 打包文件名
选项: -x 解打包
PS:
然后就可以很自然的使用 gzip 和 bzip2 命令压缩了。但是每次都先打包后压缩,解压后再解压很繁琐的,有没有方便一点的呢,看下边。。。
.tar.gz
命令如下:
tar -zcvf ***.tar.gz 源目录 #压缩
tar -zxvf ***.tar.gz #解压
tar -zxvf ***.tar.gz -C 路径 #解压到指定目录下(大写C)
.tar.bz2
命令如下:
tar -jcvf ***.tar.bz2 源目录 #压缩
tar -jxvf ***.tar.bz2 #解压
tar -jxvf ***.tar.bz2 -C 路径 #解压到指定目录下(大写C)