01. tar——打包与压缩一把梭
tar 是 Linux 里最常用的归档工具。你可能会问「归档」和「压缩」啥区别?归档就是把一堆文件和文件夹打成一个包(就像快递纸箱),压缩才是把这个包挤小(真空包装)。tar 本身只归档不压缩,但加参数可以边打边压。
说白了,tar 就像搬家公司的纸箱——把所有零散东西装进一个箱子方便运输:
bash
tar -cvf archive.tar dir/ # 打包(c=创建, v=看过程, f=指定文件名)
tar -xvf archive.tar # 解包
tar -czvf archive.tar.gz dir/ # 打包 + gzip 压缩
tar -xzvf archive.tar.gz # 解压 gzip 包
tar -cjvf archive.tar.bz2 dir/ # 打包 + bzip2 压缩(压得更小但更慢)
tar -xjvf archive.tar.bz2 # 解压 bzip2 包
tar -tf archive.tar # 只看包里有什么,不解开
tar -xzvf archive.tar.gz -C /path/ # 解压到指定目录记住这几个参数组合就够了:czvf(压 gzip)、xzvf(解 gzip)、cjvf(压 bz2)、xjvf(解 bz2)。
02. gzip / bzip2——单文件压缩
gzip 和 bzip2 只能压单个文件,所以通常是跟 tar 配合使用。偶尔直接压单个大文件也方便:
bash
gzip file.txt # 压成 file.txt.gz,原文件消失
gzip -k file.txt # 保留原文件
gunzip file.txt.gz # 解压
gzip -9 file.txt # 最大压缩率(1最快9最小)
bzip2 file.txt # 压成 file.txt.bz2
bunzip2 file.txt.bz2 # 解压03. zip / unzip——跨平台通吃
zip 格式的最大好处是跨平台——Windows、macOS、Linux 都能用。如果你的压缩包要传给非 Linux 用户,zip 是最稳妥的选择:
bash
zip -r archive.zip dir/ # 压缩目录
zip archive.zip file1 file2 # 压缩多个文件
unzip archive.zip # 解压
unzip -l archive.zip # 只看包内容不解压
unzip archive.zip -d /path/ # 解压到指定目录
zip -e archive.zip secret.txt # 加密压缩,要设密码知识测验
第 1/4 题正确 0
tar 里表示创建压缩包的两个关键参数是?
下一节
下一节 软件包管理