• Welcome to Journal web site.

我是 PHP 程序员

- 开发无止境 -

Next
Prev

Linux 打包压缩

Data: 2018-05-06 00:05:49Form: JournalClick: 11

# Linux 打包压缩


# 一、什么是打包压缩

  • 打包,也称为归档,指的是一个文件或目录的集合,而这个集合被存储在一个文件中
  • 压缩是指利用算法将文件进行处理,已达到保留最大文件信息,而让文件体积变小的目的
  • 采用压缩工具对文件进行压缩,生成的文件称为压缩包,该文件的体积通常只有原文件的一半甚至更小
  • 需要注意的是,压缩包中的数据无法直接使用,使用前需要利用压缩工具将文件数据还原,此过程又称解压缩

# 二、命令和格式

  • 压缩命令 tar、zip、gzip、gunzip、bzip2、bunzip2、compress、uncompress、 unzip、rar、unrar
  • 文件格式 .tar、.gz 、.tar.gz、.tgz、.bz2、.tar.bz2、.Z、. tar.Z、.zip、.rar

# 三、tar

  • Linux 系统中,最常用的归档(打包)命令就是 tar,可以将多个文件合并为一个文件,打包后的文件后缀亦为“tar”

# 1、打包操作

语法:tar [选项] 源文件或目录

编号选项说明
1-c将多个文件或目录进行打包
2-A追加 tar 文件到归档文件
3-f 包名指定包的文件名。包的扩展名是用来给管理员识别格式的,所以一定要正确指定扩展名
4-v显示打包文件过程
# 打包文件
tar -cvf index.tar index.php
# 打包多个文件
tar -cvf index.tar index.php laravel.php
# 打包目录
tar -cvf static.tar static/
  • 备:在使用 tar 命令指定选项时可以不在选项前面输入“-”

# 2、解压操作

语法:tar [选项] 压缩包

编号选项说明
1-x对 tar 包做解打包操作。
2-f指定要解压的 tar 包的包名。
3-t只查看 tar 包中有哪些文件或目录,不对 tar 包做解打包操作。
4-C 目录指定解打包位置。
5-v显示解打包的具体过程。
# 先把原来的目录删除
rm -rf static/ index.php laravel.php
# 解压index.tar
tar -xvf index.tar
# 解压static.tar
tar -xvf static.tar

# 3、打包压缩操作

语法:tar [选项] 压缩包 源文件或目录

编号选项说明
1-z压缩 ".tar.gz" 格式;
2-j压缩 ".tar.bz2"格式。
# 打包压缩 gz文件
tar -zcvf static.tar.gz static/
# 打包压缩 bz2文件
tar -jcvf static.tar.bz2 static/

# 4、解压操作

语法:tar [选项] 压缩包

编号选项说明
1-z解压 ".tar.gz" 格式;
2-j解压 ".tar.bz2"格式。
# 先把原来的目录删除
rm -rf static/
# 解压 gz文件
tar -zxvf static.tar.gz
# 解压 bz2文件
tar -jxvf static.tar.bz2

# 5、tar 完整操作

语法:tar [选项] 压缩包 源文件或目录

编号选项说明
1-c将多个文件或目录进行打包
2-A追加 tar 文件到归档文件
3-f 包名指定包的文件名。包的扩展名是用来给管理员识别格式的,所以一定要正确指定扩展名
4-v显示打包文件过程
5-x对 tar 包做解打包操作。
6-t只查看 tar 包中有哪些文件或目录,不对 tar 包做解打包操作。
7-C 目录指定解打包位置。
8-z压缩和解压缩 ".tar.gz" 格式;
9-j压缩和解压缩 ".tar.bz2"格式。

# 四、zip

  • “.zip”格式文件是 Windows 和 Linux 系统都通用的压缩文件类型,属于几种主流的压缩格式(zip、rar 等)之一,是一种相当简单的分别压缩每个文件的存储格式

# 1、zip 压缩操作

语法:zip [选项] 压缩包名 源文件或源目录列表

编号选项说明
1-r递归压缩目录,及将制定目录下的所有文件以及子目录全部压缩。
2-m将文件压缩之后,删除原始文件,相当于把文件移到压缩文件中。
3-v显示详细的压缩过程信息。
4-q在压缩的时候不显示命令的执行过程。
5-压缩级别压缩级别是从 1~9 的数字,-1 代表压缩速度更快,-9 代表压缩效果更好。
6-u更新压缩文件,即往压缩文件中添加新文件。
cd /www/laravel/public/
# 压缩文件
zip index.zip index.php
# 压缩目录:压缩后是空目录
zip static.zip static/
# 压缩目录
zip -rv static.zip static/

# 2、unzip 解压操作

语法:unzip [选项] 压缩包名

编号选项说明
1-d目录名 将压缩文件解压到指定目录下。
2-n解压时并不覆盖已经存在的文件。
3-o解压时覆盖已经存在的文件,并且无需用户确认。
4-v查看压缩文件的详细信息,包括压缩文件中包含的文件大小、文件名以及压缩比等,但并不做解压操作。
5-t测试压缩文件有无损坏,但并不解压。
6-x文件列表 解压文件,但不包含文件列表中指定的文件。
# 删除static目录
rm -rf static/
# 解压
unzip static.zip
Name:
<提交>