在 Linux 中,文件压缩和解压是常见操作。本文将全面介绍常见压缩工具及其用法,配以详细示例。
常见压缩工具简介
Linux 系统中,常用的压缩工具及其格式包括:
- gzip:生成 .gz 文件,适合单文件压缩。
- bzip2:生成 .bz2 文件,压缩率更高但速度较慢。
- xz:生成 .xz 文件,压缩率最高。
- zip/unzip:生成 .zip 文件,支持多文件压缩。
- tar:不是压缩工具,但常与上述工具结合使用(如 .tar.gz)。
单文件压缩与解压
gzip
压缩
gzip file.txt
压缩后生成 file.txt.gz,原文件会被替换。
解压
gunzip file.txt.gz
解压后恢复为原文件 file.txt。
bzip2
压缩
bzip2 file.txt
压缩后生成 file.txt.bz2。
解压
bunzip2 file.txt.bz2
xz
压缩
xz file.txt
生成 file.txt.xz。
解压
unxz file.txt.xz
多文件压缩与解压
zip/unzip
压缩
zip archive.zip file1.txt file2.txt
将 file1.txt 和 file2.txt 压缩为 archive.zip。
解压
unzip archive.zip
tar(打包与结合压缩)
tar 可用于将多个文件打包为一个 .tar 文件,并结合压缩工具生成 .tar.gz、.tar.bz2 等格式。
打包
tar -cvf archive.tar file1.txt file2.txt
生成 archive.tar。
解包
tar -xvf archive.tar
打包并压缩(tar.gz)
tar -czvf archive.tar.gz file1.txt file2.txt
生成 archive.tar.gz。
解压 tar.gz
tar -xzvf archive.tar.gz
示例:
压缩整个目录:
tar -czvf mydir.tar.gz mydir/
解压整个目录:
tar -xzvf mydir.tar.gz
压缩率对比
可用 ls -lh 查看文件大小:
gzip file.txt
bzip2 file.txt
xz file.txt
ls -lh
观察 .gz、.bz2 和 .xz 文件的大小对比。
常用参数说明
-c:创建压缩包。
-x:解压压缩包。
-v:显示详细过程(verbose)。
-f:指定文件名。
-z:使用 gzip 压缩。
-j:使用 bzip2 压缩。
-J:使用 xz 压缩。
总结
- 如果只需压缩单文件,建议使用 gzip 或 xz。
- 多文件压缩更推荐使用 tar 配合压缩工具。
- zip 是兼容性较好的选择,尤其在跨平台传输时。
下期内容
下一节学习本系列“文件查找和别名”的相关内容