How to Setup Multinode Hadoop 2 on CentOS/RHEL Using VirtualBox
目录:
- Tar命令语法
- 创建Tar存档
- 创建Tar Gz存档
- 创建Tar Bz2存档
- 列出Tar档案
- 提取Tar存档
- 在其他目录中提取Tar存档
- 提取Tar Gz和Tar Bz2档案
- 从Tar存档中提取特定文件
- 使用通配符从Tar存档中提取文件
- 将文件添加到现有的Tar存档
- 从Tar存档中删除文件
- 结论
tar
命令用于通过将一组文件转换为归档文件来创建tar归档文件。 它还具有提取tar归档文件,显示归档文件中包含的文件列表,将其他文件添加到现有归档文件以及各种其他类型的操作的功能。
Tar最初旨在创建用于在磁带上存储文件的档案,这就是为什么它的名称为“ T ape AR chive”。
在本教程中,我们将通过实际示例和最常见的tar选项的详细说明,向您展示如何使用
tar
命令提取,列出和创建tar归档文件。
Tar命令语法
tar有两种版本,BSD tar和GNU tar之间有一些功能差异。 大多数Linux系统默认都预先安装了GNU tar。
tar
命令的常规语法如下:
tar
-
OPERATION-仅允许和要求一个操作参数。 最常用的操作是:-
--create(-c)-创建一个新的tar存档。--extract(-x)-从存档中提取整个存档或一个或多个文件。--list(-t)-显示存档中包含的文件的列表
OPTIONS-最常用的操作是:-
--verbose(-v)-显示tar命令正在处理的文件。--file=archive=name(-f archive-name)-指定存档文件名。
ARCHIVE_NAME存档的名称。FILE_NAME(s)-要从档案中提取的文件名的空格分隔列表。 如果未提供,则将提取整个存档。 -
执行tar命令时,可以使用
tar
操作和选项的长格式或短格式。 长格式更易于阅读,而短格式则更易于键入。 长格式选项的前缀是双破折号(
--
)。 简短格式选项的前面带有一个短划线(
-
),可以将其省略。
创建Tar存档
Tar支持各种压缩程序,例如
gzip
,
bzip2
,
lzip
,
lzma
,
lzop
,
xz
和
compress
。 创建压缩的tar归档文件时,将压缩程序后缀附加到归档文件名是公认的惯例。 例如,如果归档文件已使用
gzip
压缩,则应将其命名为archive.tar.gz。
要创建tar归档文件,请使用
-c
选项,后跟
-f
和归档文件的名称。
例如,要从名为
file1
,
file2
,
file3
的文件创建一个名为
archive.tar
的档案,您将运行以下命令:
tar -cf archive.tar file1 file2 file3
这是使用长格式选项的等效命令:
tar --create --file=archive.tar file1 file2 file3
您可以从一个或多个目录或文件的内容创建档案。 默认情况下,除非指定
--no-recursion
选项,否则
--no-recursion
方式归档目录。
以下示例将创建
/home/user
目录的名为
user_backup.tar
的存档:
tar -cf backup.tar /home/user
如果要查看正在处理的文件,请使用
-v
选项。
创建Tar Gz存档
Gzip是最受欢迎的压缩tar文件的算法。 使用gzip压缩tar归档文件时,归档文件名称应以
tar.gz
或
tgz
结尾。
-z
选项告诉tar在创建档案时使用
gzip
算法压缩档案。 例如,要从给定文件创建tar.gz归档文件,可以使用以下命令:
tar -czf archive.tar.gz file1 file2
创建Tar Bz2存档
压缩tar文件的另一种流行算法是bzip2。 使用bzip2压缩tar归档文件时,归档文件名称应以
tar.bz2
或
tbz
结尾。
当指定
-j
选项时,tar将使用
bzip2
算法来压缩档案。 以下命令将从给定文件创建
tar.bz2
归档文件:
tar -cjf archive.tar.bz2 file1 file2
列出Tar档案
与
--list
(
-t
)选项一起使用时,
tar
命令将列出tar归档文件的内容,而不会提取它。 下面的命令将列出
archive.tar
文件的内容:
tar -tf archive.tar
输出将列出存档中所有文件的名称:
file1
file2
file3
要获取更多信息,例如文件所有者,文件大小,时间戳记,请使用
--verbose
(
-v
)选项:
tar -tvf archive.tar
-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file1
-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file2
-rw-r--r-- linuxize/users 0 2018-09-08 01:19 file3
提取Tar存档
Linux中的大多数归档文件都是使用tar或tar.gz格式归档和压缩的。 了解如何从命令行提取这些文件很重要。
要提取tar存档,请使用
--extract
(
-x
)选项,后跟存档名称:
tar -xf archive.tar
添加
-v
选项以打印要提取的文件的名称也是很常见的。
在其他目录中提取Tar存档
默认情况下,tar将提取存档内容到当前工作目录中。 使用
--directory
(
-C
)将归档文件提取到特定目录中:
例如,要将存档内容提取到
/opt/files
目录中,可以使用:
tar -xf archive.tar -C /opt/files
提取Tar Gz和Tar Bz2档案
提取压缩的归档文件(例如
tar.gz
或
tar.bz2
,不必指定解压缩选项。 该命令与提取
tar
归档文件时的命令相同:
tar -xf archive.tar.gz
从Tar存档中提取特定文件
有时,您可能只需要提取其中几个文件,而不是提取整个存档。
要从tar归档文件中提取特定文件,请在归档文件名后附加一个要用空格分隔的文件名列表:
tar -xf archive.tar file1 file2
解压缩文件时,必须提供其确切名称,包括
--list
(
-t
)打印的路径。
从存档中提取一个或多个目录与提取文件相同:
tar -xf archive.tar dir1 dir2
tar -xf archive.tar README
tar: README: Not found in archive tar: Exiting with failure status due to previous errors
使用通配符从Tar存档中提取文件
要基于通配符模式从存档中提取文件,请使用
--wildcards
开关并引用该模式以防止Shell解释它。
例如,要提取名称以
.js
结尾的文件(Javascript文件),可以使用:
tar -xf archive.tar --wildcards '*.js'
将文件添加到现有的Tar存档
要将文件或目录添加到现有的tar归档中,请使用
--append
(
-r
)操作。
例如,要将名为
newfile
的文件添加到archive.tar,您将运行:
从Tar存档中删除文件
使用
--delete
操作可从存档中删除文件。
以下示例显示如何从archive.tar中删除文件
file1
:
tar --delete -f archive.tar file1
结论
tar
命令最常见的用途是创建和提取tar归档文件。 提取档案时,请使用
tar -xf
命令,后跟档案名称,然后使用
tar -czf
创建新的档案,后跟档案名称以及要添加到档案中的文件和目录。
有关tar命令的更多信息,请参阅Gnu tar文档页面。
焦油终端






