在日常运维工作中,个L归档不可避免会打包压缩和解压文件,压缩Linux上有多个类似功能的命令命令,如 tar、详解效果gzip、对比bzip2、实战xz、技巧zip。个L归档今天就跟大家一起区分一下并学会如何高效实用它们。压缩 
1. 先搞清楚:归档 vs 压缩很多新手容易混淆: 归档(Archive):把多个文件/目录打包成一个文件,命令但体积没缩小。详解效果常用命令:tar压缩(Compress):通过算法减少文件体积。对比常用命令:gzip、实战bzip2、技巧xz、个L归档zip比如:你把一堆源代码打包成 project.tar —— 这只是归档。 然后再对它压缩成 project.tar.gz —— 这才是真正的“压缩包”。 2 归档命令:tartar 是 Linux 归档工具之王,WordPress模板简单举例,后面有跟其他压缩命令组合使用实例。 功能 命令 打包 tar -cvf archive.tar file1 file2 dir/ 解包 tar -xvf archive.tar 查看内容 tar -tvf archive.tar 常用参数: 参数 含义 备注 -c create,创建归档 打包 -x extract,解包 解压 -t list,列出内容 查看归档里有什么 -v verbose,显示过程 方便观察进度 -f file,指定归档文件名 一般放最后,必须有 -C dir 切换到指定目录 常用在解压到目标路径 --exclude=PATTERN 排除文件 打包时跳过某些目录/文件 --delete 从归档中删除 注意:只对未压缩的 .tar 有效 3. 压缩命令Linux 有多种压缩工具,区别主要在 压缩比和速度。 【温馨提示】bzip2/xz命令在压缩时,默认原始的文件被删除,如果你想要压缩后还留着原文件,可以加参数 -k。 (1) gzip 复制# 压缩生成 file.txt.gz,源文件消失 gzip file.txt # 解压 gunzip file.txt.gz 或者使用 gzip -d file.txt.gz1.2.3.4.5.6.7. 特点:快、常用,适合一般场景。 (2) bzip2 复制# 有些系统版本需要自行安装 yum install -y bzip2 # 压缩生成 file.txt.bz2,源文件消失 bzip2 file.txt # 保留源文件 bzip2 -k file.txt # 解压 bunzip2 file.txt.bz21.2.3.4.5.6.7.8.9.10.11. 特点:压缩比高,服务器租用但速度比 gzip 慢。 (3) xz 复制# 压缩生成 file.txt.xz,源文件消失 xz file.txt # 解压 unxz file.txt.xz1.2.3.4.5. 特点:压缩比高,适合长期存档。 (4) zip 复制# 压缩 zip archive.zip file1 file2 dir/ # 解压 unzip archive.zip1.2.3.4.5. 特点:跨平台通用(Windows 友好)。 4. tar 与压缩结合技平时我们最常见的就是 tar + 压缩的组合: 格式 命令 .tar.gz tar -czvf archive.tar.gz file1 dir/ .tar.bz2 tar -cjvf archive.tar.bz2 file1 dir/ .tar.xz tar -cJvf archive.tar.xz file1 dir/ 对应解压: 复制tar -xzvf archive.tar.gz # 解压 .tar.gz tar -xjvf archive.tar.bz2 # 解压 .tar.bz2 tar -xJvf archive.tar.xz # 解压 .tar.xz1.2.3. 小技巧:参数里的 z/j/J 分别代表 gzip/bzip2/xz。 5. 实战对比我们用一个 100MB 的日志文件 来实验,看看压缩差别: (1) 测试文件 我准备了四个一样大的文件: 
(2) 分别压缩 复制gzip test1.log bzip2 test2.log xz test3.log zip test4.zip test4.log1.2.3.4. (3) 查看大小 复制ll -h1. 
结论: bzip2 压缩率最高,适合长期存档gzip & zip 差不多,gzip 在 Linux 更常见xz 介于两者之间6. 实用技巧解压到指定目录: 复制tar -xvf archive.tar.gz -C /data1. 只打包指定目录下的文件,不含目录本身: 复制tar -czvf code.tar.gz -C /path/to/code .1. 只解压某个文件: 复制tar -xvf archive.tar.gz path/to/file1. 压缩比测试(适合硬盘党): 复制tar -cvf - bigdir/ | xz > bigdir.tar.xz1. 7. 生产环境使用总结归档用 tar,压缩选 gzip/bzip2/xz日常:tar.gz 足够 → 快捷 & 通用高压缩:tar.bz2 → 节省空间跨平台:zip → Windows 友好只要记住这套逻辑,你就能轻松应对 99% 的 Linux 压缩归档需求。 免费源码下载 |