Linux Tar 命令举例说明
Linux 中的 tar 命令是一个强大的工具,用于将多个文件归档到单个文件(称为 tarball)中。该 tarball 也可以使用各种压缩算法进行压缩。 “tar”命令对于备份数据、归档文件和共享文件集合非常有用。以下是如何使用“tar”命令的一些常见示例和说明:
创建 Tarball(Tar 存档)
要创建 tarball,请使用 -c(创建)选项。例如,要创建名为 myfolder 的目录的 tarball,您可以使用:
tar -cvf myfolder.tar myfolder/
这里,-v 用于详细模式(显示进程),-f 指定 tarball 的文件名。
提取 Tar 存档
要提取 tarball 的内容,请使用 -x(提取)选项。例如:
tar -xvf myfolder.tar
这会将“myfolder.tar”的内容提取到当前目录中。
查看 Tar 存档的内容
要查看 tarball 的内容而不解压它,请使用 -t 选项:
tar -tvf myfolder.tar
创建压缩的 Tar 存档
您可以使用 gzip 或 bzip2 压缩创建压缩 tarball。对于 gzip,请使用 -z 选项,对于 bzip2,请使用 -j 选项。例如:
tar -czvf myfolder.tar.gz myfolder/
tar -cjvf myfolder.tar.bz2 myfolder/
.tar.gz 或 .tar.bz2 扩展名指示压缩类型。
提取压缩的 Tar 存档
要提取这些压缩文件,请使用相同的 -z 或 -j 选项以及 -x:
tar -xzvf myfolder.tar.gz
tar -xjvf myfolder.tar.bz2
将文件附加到 Tar 存档
要将文件添加到现有 tarball,请使用 -r 选项。请注意,这不适用于压缩 tarball:
tar -rvf myfolder.tar newfile
从 Tar 存档中提取特定文件
要从 tarball 中提取特定文件,请将它们列在 tarball 名称后面:
tar -xvf myfolder.tar file1 file2
将 Tar 存档内容与文件系统进行比较
要检查 tarball 的内容是否与文件系统中的文件匹配,请使用 -d 选项:
tar -dvf myfolder.tar
这些示例涵盖了 tar 命令的最常见用法。请记住,tar 有许多选项和功能,因此最好参考其手册页 (man tar) 以获取更多详细信息。
经常问的问题
Linux 中的 tar 命令广泛用于文件归档和压缩,这引起了新用户和有经验的用户的许多常见问题,我将在下面尝试回答这些问题。
tar 代表什么,它的主要用途是什么?
Tar 代表磁带存档。它主要用于创建包含多个文件或目录的单个存档文件,并可选择压缩它们。
如何使用 tar 命令创建 tarball(存档文件)?
使用tar -cvf archive_name.tar /path/to/directory创建压缩包。 -c 标志用于创建存档,-v 表示详细模式,-f 用于指定文件名。
如何从 tarball 中提取文件?
使用 tar -xvf archive_name.tar 提取文件。这里,-x 表示提取,-v 表示详细,-f 指定文件名。
如何查看 tarball 的内容而不解压它们?
使用tar -tvf archive_name.tar。 -t 标志用于列出内容。
如何使用 gzip 或 bzip2 创建压缩 tarball?
对于 gzip,请使用tar -czvf archive_name.tar.gz /path/to/directory。对于 bzip2,请使用tar -cjvf archive_name.tar.bz2 /path/to/directory。 -z 标志用于 gzip,-j 标志用于 bzip2 压缩。
.tar.gz 和 .tar.bz2 文件有什么区别?
两者都是压缩的 tarball 格式。 .tar.gz 使用 gzip 压缩,速度更快,但效率稍低。 .tar.bz2 使用 bzip2 压缩,速度较慢,但压缩效果更好。
如何将文件添加到现有 tarball 中?
使用tar -rvf archive_name.tar newfile。 -r 标志用于将文件附加到存档的末尾。请注意,这不适用于压缩 tarball。
我可以从 tarball 中提取单个文件或目录吗?
是的,使用tar -xvf archive_name.tar Specific_file_or_directory。
如何将 tarball 解压缩到不同的目录?
使用tar -xvf archive_name.tar -C /target/directory。 -C 标志指定提取的目标目录。
如何将 tarball 的内容与目录中的现有文件进行比较?
使用tar -dvf archive_name.tar。 -d 标志检查 tarball 内容和现有文件之间的差异。