linux打包压缩命令tar.gz全攻略

2025-10-08 05:22:13

想要在Linux上把一堆文件打包成一个文件,还要压缩一下体积减小存储空间?tar.gz格式不仅能打包,还能压缩,两者一气呵成。那么怎么使用tar命令来创建.tar.gz文件呢?咱们现在就来详细了解一下。

步骤1:打开终端

首先,打开Linux系统的终端。这是操作的起点,可以在桌面环境里找到终端应用,或者使用快捷键Ctrl + Alt + T。

步骤2:定位到目录

用cd命令切换到包含待打包文件的目录。例如:

cd /path/to/directory

替换/path/to/directory为实际的文件夹路径。

步骤3:使用tar命令打包压缩

现在,来执行tar命令进行打包和压缩。执行格式如下:

tar -czvf name-of-archive.tar.gz/path/to/directory-or-file

-c 代表创建一个新的压缩文件。

-z 代表压缩文件使用gzip。

-v 代表在压缩的时候显示过程信息(verbose模式)。

-f 代表指定压缩后的文件名。

假设现在想打包当前目录所有文件和子目录,可以这么做:

tar -czvf archive.tar.gz *

archive.tar.gz 是新创建的压缩文件的名称,* 代表当前目录下的所有文件和目录。

步骤4:检验文件

打包压缩完成后,可以使用ls命令确认文件已经生成:

ls -l archive.tar.gz

如果看到了archive.tar.gz文件,说明操作成功。

特别提示

在命令行中,可以使用通配符来选择特定类型的文件。比如,只压缩所有.txt文件:

tar -czvf text-files.tar.gz *.txt

而且,还可以排除特定的文件或目录,例子如下:

tar -czvf archive.tar.gz--exclude=some_directory *

这个命令会打包当前目录下的所有内容,但排除了名为some_directory的目录。

如果要查看tar.gz文件里有哪些内容:

tar -tzvf archive.tar.gz

解包

现在假设需要把tar.gz包解压到当前目录或指定目录,命令如下:

tar -xvzf archive.tar.gz -C/path/to/destination

-x 是提取的意思。

-C 后面是要解压到的位置,不写-C参数就解压到当前目录。

只解压单个文件

如果压缩包里东西多,但只想解压一个,可以这么操作:

tar -xvzf archive.tar.gz -C/path/to/destination specific_file

这里的specific_file是压缩包内部的文件路径。

创建不压缩的tar包

有时候,可能只想打包不压缩,那就省掉-z:

tar -cvf archive.tar /path/to/directory

常见问题

操作过程中,如果遇到权限不足的问题,可能需要为tar命令加上sudo,尤其是当处理系统级别的目录时。

sudo tar -czvf archive.tar.gz/path/to/directory