Dec 12

[原]tar命令详解 不指定

linuxing , 12:32 , 基础知识 » 系统命令 , 评论(0) , 引用(0) , 阅读(47072) , Via 本站原创 | |
    tar是Linux环境下最常用的备份工具之一。tar(tap archive)原意为操作磁带文件,但基于Linux的文件操作机制,同样也可适用于普通的磁盘文件。tar可用于建立、还原、查看、管理文件,也可方便的追加新文件到备份文件中,或仅更新部分的备份文件,以及解压、删除指定的文件。熟悉其常用参数,能方便日常的系统管理工作。

一、版本
还是那句,不同的操作系统,tar的命令参数是有点区别的:
引用
# tar --version
tar (GNU tar) 1.14

二、简单操作
命令格式:
tar [options] [tarfile] [other-files]
tar--long-option -function-options files

tar可使用的参数非常多,先列举几个最常用的参数:
引用
-t, --list
  列出归档文件内容目录
-x, --extract, --get
  从归档文件中解析文件
-c, --create
  创建新的归档文件
  上面三个参数,不能同时存在,仅能使用其中一个,即t/x/c
-f file, --file=file
  指定备份文件,或设备,例如磁带机/dev/st0
-v, --verbose
  显示命令的执行过程
-Z, --compress, --uncompress
  使用compress命令处理备份文件
-z, --gzip, --gunzip, --ungzip
  使用gzip命令处理备份文件
-j, --I, --bzip
  使用bzip2命令处理备份文件
  -z和-j都是在备份文件打包后才进行压缩的操作的,并且,该操作会影响其他的参数,后面会再提到
-C directory, --directory=directory
  先进入指定的目录,再释放

简单使用:
把/etc目录中所有的文件打包为etc.tar文件
tar -cvf /tmp/etc.tar /etc

把/etc目录中所有的文件打包并使用gzip压缩为etc.tar.gz文件
tar -zcvf /tmp/etc.tar.gz /etc

把/etc目录中所有的文件打包并使用bzip2压缩为etc.tar.bz2文件
这里的,tar.gz或tar.bz2都是惯例,为方便标识的,例如:tgz等,并不是特定条件,但建议遵循惯例
tar -jcvf /tmp/etc.tar.bz2 /etc

查看备份包中的内容,若为已经压缩的文件,需加上-z或者-j参数
tar -ztvf /tmp/etc.tar.gz

默认情况下,tar打包时都是使用相对路径的,所以,释放时,需要先进入目录目录,然后再解压
同样的,根据使用的压缩方式,应加上-z或者-j参数
cd /tmp && tar -zxvf /tmp/etc.tar.gz

这是另一种写法,结果和上面的相同,其会先进入/tmp目录,然后再释放包的
tar -zxvf /tmp/etc.tar.gz -C /tmp

释放单个etc/passwd文件,正如前面提到的,tar包中的是相对路径,所以不能使用“/etc/passwd”
而且,这里不能使用-C参数,释放文件是当前路径的相对路径,并带目录释放
tar -zxvf /tmp/etc.tar.gz etc/passwd

tar还可以支持很多额外的参数,方便我们在备份和释放的时候进行控制。
内文分页: [1] [2] [3]
Tags: ,
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]