Linux的tar命令

📎 原文链接:https://xlog.app/api/redirection?characterId=50216&noteId=15

在 Linux 系统中,Tar 打包是一项非常重要的操作,它为我们提供了一种方便、高效的方式来整理和备份文件及目录。

Tar 是 tape archive(磁带归档)的缩写,最初是用于将文件存储到磁带上。如今,它主要用于将多个文件和目录合并成一个单一的归档文件,以便于存储、传输或备份

基本语法

1
tar 选项 归档文件名 文件或目录列表

常见的选项包括:

-c:创建新的归档文件。
-v:显示详细的处理过程。
-f:指定归档文件名。
-z:使用 gzip 压缩归档文件。
-j:使用 bzip2 压缩归档文件。

例如,要创建一个包含当前目录下所有文件和子目录的归档文件 myarchive.tar,可以使用以下命令:

1
tar -cvf myarchive.tar.

压缩与解压缩
为了节省存储空间和传输时间,我们常常需要对归档文件进行压缩。
使用 -z 选项可以使用 gzip 压缩算法,生成 .tar.gz 格式的压缩文件;使用 -j 选项可以使用 bzip2 压缩算法,生成 .tar.bz2 格式的压缩文件。

例如,要创建一个使用 gzip 压缩的归档文件 myarchive.tar.gz,可以使用以下命令:

1
tar -czvf myarchive.tar.gz.

解压缩相应的文件也很简单。对于 .tar.gz 文件,可以使用以下命令解压缩:

1
tar -xzvf myarchive.tar.gz

对于 .tar.bz2 文件,可以使用:

1
tar -xjvf myarchive.tar.bz2

指定文件和目录
我们可以在 tar 命令中明确指定要包含或排除的文件和目录。例如,只打包当前目录下的 docs 目录,可以使用:

1
tar -cvf myarchive.tar docs

要排除某个文件或目录,可以使用 –exclude 选项。比如,要打包除了 temp 目录以外的所有内容,可以使用:

1
tar -cvf myarchive.tar --exclude=temp.

分卷打包
当要打包的文件非常大时,我们可以使用分卷功能将其分成多个较小的部分。例如,要将归档文件分成每个大小为 100MB 的卷,可以使用以下命令:

1
tar -cvMf myarchive.tar 100M.

实际应用场景
Tar 打包在很多场景中都非常有用。
例如,在进行系统备份时,可以将重要的配置文件、用户数据等打包;在软件发布时,可以将相关的文件打包成一个易于分发的归档文件;在数据迁移时,也可以方便地将大量文件进行打包传输

作者

Jhuoer Yen

发布于

2024-09-11

更新于

2024-09-11

许可协议

评论

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×