网络知识网站,网站建设广告投放是什么,中文网页设计模板下载,网络组建考试题一、tar 命令概述
Tar#xff08;Tape ARchive#xff0c;磁带归档的缩写#xff0c;LCTT 译注#xff1a;最初设计用于将文件打包到磁带上#xff0c;现在我们大都使用它来实现备份某个分区或者某些重要的目录#xff09;。 tar 是类 Unix 系统中广泛使用的命令#x…一、tar 命令概述
TarTape ARchive磁带归档的缩写LCTT 译注最初设计用于将文件打包到磁带上现在我们大都使用它来实现备份某个分区或者某些重要的目录。 tar 是类 Unix 系统中广泛使用的命令用于归档多个文件或目录到单个归档文件中并且归档文件可以进一步使用 gzip 或者 bzip2 等技术进行压缩。换言之tar 命令也可以用于备份先是归档多个文件和目录到一个单独的 tar 文件或归档文件然后在需要之时将 tar 文件中的文件和目录释放出来。
tar 命令语法如下
# tar 选项 文件下面详细介绍 tar 命令的选项。
tar 命令选项划分成不同的操作其中包括一般选项和压缩选项。下表列出了常用选项、选项的长版本及说明
tar 操作选项 tar 命令需要以下三个选项之一
选项描述- c 、-- create创建一个新存档- x、-- extract从现有存档提取- t 、-- list列出存档的目录
所选的 tar 一般选项
选项描述- v 、-- verbose详细信息显示存档或提取的文件有哪些- f、-- file文件名此选项必须后接要使用或创建的存档的文件名- p、-- preserve-permissions在提取存档是保留文件和目录的权限而不去除umask
tar 压缩选项
选项描述- z 、-- gzip使用gzip压缩方式.tar.gz- j、-- bzip2使用bzip2压缩方式.tar.bzip2, bzip2的压缩率通常比gzip高- J 、-- xz使用xz压缩方式.tar.xzxz的压缩率通常比bzip2更高
二、归档文件和目录
创建新归档语法
create -cf 要创建的存档文件名 要添加到该归档文件的文件和目录列表举例如下
-- 将file1、 file2、 file3归档到 archive.tar
# tar -cf archive.tar file1 file2 file3 --查看归档文件
# ls archive.tar以上tar命令也可以使用长版本选项执行
# tar --filearchive.tar --create file1 file2 file3要使tar能够归档选定的文件执行tar命令的用户必须要可以读取这些文件。 注意 在创建tar存档之前请先验证目录中没有其他存档与要创建的新存档名称相同。 tar命令将覆盖现有的存档而不是提供警告。 三、列出存档的内容
列出存档内容语法
# tar -tf 存档名称举例如下
--查看 /root目录下归档文件etc.tar包含的内容
# tar -tf /root/etc.tar四、从存档中提取文件
tar命令相对于当前目录提取文件举例如下
--将 /root/etc.tar文档中的文件恢复到/root/etcbackup目录
# mkdir /root/etcbackup
# cd /root/etcbackup
# tar -xf /root/etc.tar说明 tar存档通常应当提取到空目录中以确保不会覆盖任何现有的文件。 当root提取存档时tar命令会保留文件的原始用户和组所有权。 如果普通用户使用tar提取文件文件所有权将属于从存档中提取文件的用户。 默认情况下从存档提取文件时将从存档内容的权限中去除umask。要保留存档文件的权限可在提取存档时使用p选项。 在上例中若要在提取 /root/etc.tar文档内容时保留所提取文件的权限可执行如下命令:
# tar -xpf /root/etc.tar五、创建压缩存档
tar命令支持三种压缩方式gzip、bzip2、xz 下面将依次举例。
示例1创建gzip压缩存档/root/etcbackup.tar.gz 其内容来自host上的/etc目录
# tar -czf /root/etcbackup.tar.gz /etc示例2创建bzip2压缩存档/root/logbackup.tar.bz2 其内容来自host上的/var/log目录
# tar -cjf /root/logbackup.tar.bzip2 /var/log示例3创建xz压缩存档/root/sshbackup.tar.xz 其内容来自host上的/etc/ssh目录
# tar -cJf /root/sshbackup.tar.xz /etc/ssh六、提取压缩的存档
tar命令会判断之前使用的压缩方式。因此通常不需要使用在创建文档时所用的同一压缩选项。 可以在tar命令中添加解压缩方式但必须使用正确的解压缩类型选项否则tar会生成错误来指出选项中指定的解压缩类型与文件的解压缩类型不匹配。
示例1将gzip压缩存档/root/etcbackup.tar.gz 的内容提取到/tmp/etcbackup目录
# mkdir /tmp/etcbackup
# cd /tmp/etcbackup
# tar -xzf /root/etcbackup.tar.gz /etc示例2将bzip2压缩存档/root/logbackup.tar.bz2 的内容提取到/tmp/logbackup目录
# mkdir /tmp/logbackup
# cd /tmp/logbackup
# tar -xjf /root/logbackup.tar.bzip2 /tmp/logbackup示例3将xz压缩存档/root/sshbackup.tar.xz 的内容提取到/tmp/sshbackup目录
# tar -xJf /root/sshbackup.tar.xz /tmp/sshbackup七、单个文档的压缩与解压缩
gzip、bzip2、xz可单独用于压缩单个文件举例如下
--以gzip方式压缩文件etc.tar会生成压缩文件 etc.tar.gz
# gzip etc.tar--以bzip2方式压缩文件abc.tar会生成压缩文件 abc.tar.bz2
# bzip2 abc.tar--以xz方式压缩文件log.tar会生成压缩文件 log.tar.xz
# xz log.tar对应的解压缩命令如下
-- 将生成解压缩文件etc.tar
# gunzip etc.tar.gz--将生成解压缩文件abc.tar
# bunzip2 abc.tar.bz2--将生成解压缩文件 log.tar
# unxz log.tar.zx