Linux 解压缩
在Linux中常见的文件格式有zip
,gz
,tar
,tar.gz
,其中gz
表示压缩,tar
表示归档。一般都是使用tar.gz
,下面主要介绍tar
和 zip
两种工具。
解压格式对应表
压缩文件格式 | 解压命令 | 压缩命令 |
---|---|---|
.tar | tar -xvf archive.tar | tar -cvf archive.tar files/ |
.tar.gz | tar -xzvf archive.tar.gz | tar -czvf archive.tar.gz files/ |
.tar.bz2 | tar -xjvf archive.tar.bz2 | tar -cjvf archive.tar.bz2 files/ |
.tar.xz | tar -xJvf archive.tar.xz | tar -cJvf archive.tar.xz files/ |
.gz | gunzip file.gz 或 gzip -d file.gz | gzip file |
.bz2 | bunzip2 file.bz2 或 bzip2 -d file.bz2 | bzip2 file |
.xz | unxz file.xz 或 xz -d file.xz | xz file |
.zip | unzip archive.zip | zip archive.zip files/ |
.7z | 7z x archive.7z | 7z a archive.7z files/ |
tar 命令
tar 命令是一个用于创建、维护、修改和提取 tar 存档文件的工具。
常用参数:
- -c:创建一个新的存档文件(create)。
- -x:从存档文件中提取文件(extract)。
- -t:列出存档文件的内容(list)。
- -v:显示操作过程中的文件信息(verbose)。
- -f:指定存档文件的名称(file)。
- -z:通过 gzip 进行压缩或解压(gzip)。
- -j:通过 bzip2 进行压缩或解压(bzip2)。
- -J:通过 xz 进行压缩或解压(xz)。
- -u:仅添加那些比存档文件中副本更新的文件(update)。
- -r:追加文件到已存在的存档文件中(append)。
- -W:校验存档文件(verify)。
zip命令
zip 命令用于将文件和目录压缩成 .zip 格式的压缩文件。 常用参数
- -r:递归地压缩目录中的所有文件和子目录。
- -q:安静模式,不显示压缩过程中的信息。
- -v:详细模式,显示压缩过程中的详细信息。
- -9:最大压缩级别,范围是 0-9,默认是 6。
- -e:加密压缩文件,要求输入密码。
- -x:排除文件,不包括在压缩文件中。
示例:
- 压缩当个文件
shell
zip archive.zip file1
archive.zip:要创建的压缩文件名, file1:要压缩的文件。
- 压缩多个文件
shell
zip archive.zip file1 file2 file3
- 压缩目录及其内容
shell
zip -r archive.zip directory/
- zip命令总结
命令 | 参数 | 解释 | 示例 |
---|---|---|---|
zip | -r | 递归地压缩目录中的所有文件和子目录 | zip -r archive.zip directory/ |
zip | -q | 安静模式,不显示压缩过程中的信息 | zip -q archive.zip file1 |
zip | -v | 详细模式,显示压缩过程中的详细信息 | zip -v archive.zip file1 |
zip | -9 | 最大压缩级别 | zip -9 archive.zip file1 |
zip | -e | 加密压缩文件,要求输入密码 | zip -e archive.zip file1 |
zip | -x | 排除文件,不包括在压缩文件中 | zip -r archive.zip directory/ -x "*.tmp" |
unzip | -q | 安静模式,不显示解压过程中的信息 | unzip -q archive.zip |
unzip | -v | 显示解压过程中的详细信息 | unzip -v archive.zip |
unzip | -l | 列出压缩文件的内容 | unzip -l archive.zip |
unzip | -d | 指定解压缩的目标目录 | unzip archive.zip -d /path/to/destination |
unzip | -o | 覆盖已存在的文件而不提示 | unzip -o archive.zip |