打包和压缩的区别
打包与压缩的区别
- 打包:将多个文件或目录组合成一个文件,便于传输和管理,但不减少数据总量。
- 压缩:通过压缩算法减小文件或目录的大小,节省存储空间。通常在压缩前进行打包。
tar命令的风格差异
- System V风格:tar命令参数前加“-”。
- BSD风格:tar命令参数前不加“-”。
两种方式在功能上没有差异,主要是命令书写风格的区别。
tar命令常用参数
参数 | 描述 |
---|---|
-z | 启用gzip压缩 |
-j | 启用bzip2压缩 |
-J | 启用xz压缩 |
-x | 解压缩文件 |
-t | 查看压缩文件内容 |
-c | 创建压缩包 |
-C | 指定压缩或解压目录 |
-v | 显示操作过程 |
-f | 指定压缩包名,此参数需放在命令末尾 |
-p | 保留文件权限 |
-P | 保留绝对路径 |
打包实例
- 打包/root/目录下的文件到jihe.tar。
- 查看jihe.tar文件内容。
- 将jihe.tar文件内容解压到/opt目录。
压缩方法与建议
- gzip:压缩速度快,广泛使用,适合大文件。
- bzip2:压缩文件更小,但速度较慢。
- xz:提供最高压缩率,适合需要最小文件的场景。
解压示例
- 解压文件到当前目录或指定目录。
- 使用tar命令自动匹配压缩方式进行解压。
补充说明
- 使用
--exclude
参数可以在打包或压缩时排除特定文件。
zip与unzip命令
- zip命令:创建压缩包,可指定压缩级别和排除文件。
- unzip命令:解压压缩包,可查看内容而不解压。
常用参数
参数 | 描述 |
---|---|
-m | 压缩后删除原文件 |
-o | 设置压缩文件的时间为当前时间 |
-q | 安静模式,压缩时不显示过程 |
-r | 递归处理,包括所有子目录 |
-x | 排除指定的文件 |
实例操作
- 压缩/root/目录下的文件和目录到harry.zip。
- 排除特定文件进行压缩。
- 解压harry.zip并查看内容。
补充:增加内容至.tar归档
使用tar命令的-r选项可将文件追加到现有的.tar归档中。
License:
CC BY 4.0