小工具知识网

当前位置: 首页 > 行业知识 > Linux 压缩、解压文件的 4 种方式。tar、gzip、gunzip、zip、unzip、7z命令使用方法

行业知识

Linux 压缩、解压文件的 4 种方式。tar、gzip、gunzip、zip、unzip、7z命令使用方法

2026-11-11 04:15:52 来源:互联网转载

Linux 压缩、解压文件的 4 种方式。tar、gzip、gunzip、zip、unzip、7z命令使用方法

文章目录

  • Linux 压缩、解压文件的 4 种方式。tar、gzip、gunzip、zip、unzip、7z命令使用方法
    • 1. tar
      • 1.1. 压缩:
      • 1.2. 解压:
      • 1.3. tar 命令各参数含义
      • 2. gzip、gunzip
        • 2.1. 压缩:
        • 2.2. 解压:
        • 2.3. gzip、gunzip 命令各参数含义
          • 2.3.1. gzip 命令的各个参数的含义如下:
          • 2.3.2. gunzip 命令的各个参数的含义如下:
          • 3. zip、unzip
            • 3.1. 压缩:
            • 3.2. 解压:
            • 3.3. zip、unzip 命令各参数含义
              • 3.3.1. zip 命令参数含义
              • 3.3.2. unzip 命令参数含义
              • 4. 7z
                • 4.1. 压缩:
                • 4.2. 解压:
                • 4.3. 7z 命令各参数含义

                  Linux 压缩、解压文件的方式有如下几种:

                  1. tar

                  tar 是一种常用的打包工具,可以将多个文件或目录打包成一个 tar 包,也可以将一个 tar 包解压缩到指定的目录。

                  1.1. 压缩:

                  # 将多个文件或目录打包成一个 tar 包,-c 表示创建 tar 包,-v 表示显示详细信息,-f 表示指定文件名tar -cvf filename.tar file1 file2 dir1# 将一个目录及其子目录下的所有文件打包成一个 tar 包,-z 表示使用 gzip 压缩,-f 表示指定文件名tar -czf filename.tar.gz dir1# 将一个目录及其子目录下的所有文件打包成一个 tar 包,-j 表示使用 bzip2 压缩,-f 表示指定文件名tar -cjf filename.tar.bz2 dir1

                  1.2. 解压:

                  # 将一个 tar 包解压缩到指定目录下,-x 表示解压,-v 表示显示详细信息,-f 表示指定文件名tar -xvf filename.tar -C /path/to/directory# 将一个 gzip 压缩的 tar 包解压缩到指定目录下,-z 表示使用 gzip 解压缩tar -zxvf filename.tar.gz -C /path/to/directory# 将一个 bzip2 压缩的 tar 包解压缩到指定目录下,-j 表示使用 bzip2 解压缩tar -jxvf filename.tar.bz2 -C /path/to/directory

                  1.3. tar 命令各参数含义

                  tar 命令是 Linux 下常用的打包和压缩工具,用于将多个文件或目录打包成一个 tar 包,也可以将一个 tar 包解压缩到指定的目录。tar 命令的各个参数的含义如下:

                  tar [选项] [文件名] [文件列表]

                  其中,选项包括:

                  • -c, --create:创建一个 tar 包。可以和 -f 参数一起使用,指定生成的 tar 包的文件名;
                  • -x, --extract, --get:解包一个 tar 包。可以和 -f 参数一起使用,指定要解压缩的 tar 包的文件名;
                  • -r, --append:将一个或多个文件追加到已存在的 tar 包的末尾。可以和 -f 参数一起使用,指定要追加的 tar 包的文件名;
                  • -u, --update:仅将新于 tar 包中已有的文件或目录添加到 tar 包中。可以和 -f 参数一起使用,指定要更新的 tar 包的文件名;
                  • -t, --list:列出一个 tar 包中包含的文件列表。可以和 -f 参数一起使用,指定要列出的 tar 包的文件名;
                  • -f, --file=ARCHIVE:指定要操作的 tar 包的文件名;
                  • -v, --verbose:在操作的过程中显示详细信息;
                  • -z, --gzip, --ungzip:在 tar 包中使用 gzip 压缩;
                  • -j, --bzip2:在 tar 包中使用 bzip2 压缩;
                  • -C, --directory=DIR:指定解压缩到的目录。

                    例如,将多个文件或目录打包成一个 tar 包,可以使用以下命令:

                    tar -cvf filename.tar file1 file2 dir1

                    其中,-c 表示创建 tar 包,-v 表示显示详细信息,-f 后面跟着的是生成的 tar 包的文件名,file1 file2 dir1 是要打包的文件或目录列表。

                    将一个 tar 包解压缩到指定目录下,可以使用以下命令:

                    tar -xvf filename.tar -C /path/to/directory

                    其中,-x 表示解压缩,-v 表示显示详细信息,-f 后面跟着的是要解压缩的 tar 包的文件名,-C 后面跟着的是解压缩到的目录。

                    2. gzip、gunzip

                    gzip 是一种常用的压缩工具,可以将单个文件压缩成一个 gzip 文件,也可以将一个 gzip 文件解压缩。

                    2.1. 压缩:

                    # 将一个文件压缩成 gzip 格式,-c 表示将压缩结果输出到标准输出,-v 表示显示详细信息gzip -cv filename > filename.gz

                    2.2. 解压:

                    # 将一个 gzip 文件解压缩,-d 表示解压gunzip -d filename.gz

                    2.3. gzip、gunzip 命令各参数含义

                    gzip 和 gunzip 命令是 Linux 下常用的压缩和解压缩工具,用于将单个文件压缩成一个 gzip 文件,也可以将一个 gzip 文件解压缩。

                    2.3.1. gzip 命令的各个参数的含义如下:
                    gzip [选项] 文件名

                    其中,选项包括:

                    • -c, --stdout:将压缩结果输出到标准输出;
                    • -d, --decompress, --uncompress:解压缩 gzip 文件;
                    • -f, --force:强制压缩,覆盖已有文件;
                    • -h, --help:显示帮助信息;
                    • -l, --list:列出 gzip 文件的详细信息;
                    • -n, --no-name:不保存原文件名到 gzip 文件中;
                    • -q, --quiet:不显示压缩结果信息;
                    • -r, --recursive:递归处理目录下的所有文件;
                    • -t, --test:测试 gzip 文件的完整性;
                    • -v, --verbose:显示压缩结果信息;
                    • -1 到 -9:指定压缩级别,数字越大压缩比越高,但所需时间也越长。

                      例如,将一个文件压缩成 gzip 格式,并将压缩结果输出到标准输出,可以使用以下命令:

                      gzip -c filename > filename.gz

                      其中,-c 表示将压缩结果输出到标准输出,filename 是要压缩的文件名,> filename.gz 表示将压缩结果重定向到 filename.gz 文件中。

                      2.3.2. gunzip 命令的各个参数的含义如下:
                      gunzip [选项] 文件名

                      其中,选项包括:

                      • -c, --stdout:将解压缩结果输出到标准输出;
                      • -f, --force:强制解压缩,覆盖已有文件;
                      • -h, --help:显示帮助信息;
                      • -l, --list:列出 gzip 文件的详细信息;
                      • -q, --quiet:不显示解压缩结果信息;
                      • -r, --recursive:递归处理目录下的所有文件;
                      • -t, --test:测试 gzip 文件的完整性;
                      • -v, --verbose:显示解压缩结果信息。

                        例如,将一个 gzip 文件解压缩,可以使用以下命令:

                        gunzip filename.gz

                        其中,filename.gz 是要解压缩的 gzip 文件名。

                        3. zip、unzip

                        zip 是一种常用的压缩工具,可以将多个文件或目录打包成一个 zip 文件,也可以将一个 zip 文件解压缩到指定的目录。

                        3.1. 压缩:

                        # 将多个文件或目录打包成一个 zip 文件zip -r filename.zip file1 file2 dir1

                        3.2. 解压:

                        # 将一个 zip 文件解压缩到指定目录下unzip filename.zip -d /path/to/directory

                        3.3. zip、unzip 命令各参数含义

                        3.3.1. zip 命令参数含义

                        zip 命令用于将多个文件或目录归档成一个压缩文件,下面是常用的参数:

                        • -r 递归地压缩目录及其子目录下的所有文件。
                        • -m 将文件移动到压缩文件中,而不是复制它们。这意味着被压缩的文件将被删除。
                        • -j 将目录信息从压缩文件中删除,仅压缩文件本身。
                        • -q 静默模式,不显示压缩过程中的信息。
                        • -v 显示压缩过程中的详细信息。
                        • -c 创建一个新的压缩文件,如果该文件已经存在,则覆盖它。
                        • -u 只更新压缩文件中的新文件或修改过的文件。
                        • -f 指定压缩文件名。

                          例如,要将目录 /home/user/docs 下的所有文件压缩成一个名为 docs.zip 的压缩文件,可以使用以下命令:

                          zip -r docs.zip /home/user/docs
                          3.3.2. unzip 命令参数含义

                          unzip 命令用于解压缩 .zip 格式的压缩文件,下面是常用的参数:

                          • -l 列出压缩文件中的所有文件,但不解压缩它们。
                          • -n 不要覆盖现有文件。
                          • -o 覆盖现有文件。
                          • -q 静默模式,不显示解压缩过程中的信息。
                          • -v 显示解压缩过程中的详细信息。
                          • -d 指定解压缩后的目录。

                            例如,要解压缩名为 docs.zip 的压缩文件到目录 /home/user/unzip 下,可以使用以下命令:

                            unzip docs.zip -d /home/user/unzip

                            4. 7z

                            7z 是一种高压缩比的压缩工具,可以将多个文件或目录打包成一个 7z 文件,也可以将一个 7z 文件解压缩到指定的目录。

                            4.1. 压缩:

                            # 将多个文件或目录打包成一个 7z 文件7z a filename.7z file1 file2 dir1

                            4.2. 解压:

                            # 将一个 7z 文件解压缩到指定目录下7z x filename.7z -o/path/to/directory

                            4.3. 7z 命令各参数含义

                            7z 命令是一个高效的压缩和解压缩工具,常用于Linux和Windows平台。下面是常用的参数:

                            • a 创建一个压缩文件。
                            • -t 指定压缩文件的格式,常用格式有:7z、zip、gzip、bzip2、tar等。
                            • -mx 指定压缩级别,数字越大,压缩比越高,但耗费的时间也越多。取值范围为0-9,其中0表示不压缩,9表示最高压缩级别。
                            • -p 设置压缩文件密码。
                            • -mhe=on 启用文件头加密。
                            • -mmt 设置多线程压缩,可以加快压缩速度。
                            • -m0=lzma2 指定压缩算法,常用的算法有:lzma2、lzma、ppmd、bzip2等。
                            • -v 指定压缩包大小,支持 K(千字节)、M(兆字节)、G(吉字节)和 B(字节)等单位。
                            • -r 递归压缩目录及其子目录下的所有文件。
                            • -x 排除某些文件或目录。
                            • -o 指定压缩文件输出路径和名称。

                              例如,要将目录 /home/user/docs 下的所有文件压缩成一个使用 lzma2 算法的压缩文件,并设置密码为 mypassword,可以使用以下命令:

                              7z a -t7z -m0=lzma2 -mx=9 -mhe=on -p'mypassword' docs.7z /home/user/docs/*

                              要解压缩名为 docs.7z 的压缩文件并将其解压缩到目录 /home/user/unzip 下,可以使用以下命令:

                              7z x docs.7z -o/home/user/unzip -p'mypassword'

上一篇:全能浏览器,强大功能与无限便捷体验!

下一篇:云服务器家庭群组怎么用?