linux -- tar 命令

#压缩
tar -czvf ***.tar.gz
tar -cjvf ***.tar.bz2
#解压缩
tar -xzvf ***.tar.gz
tar -xjvf ***.tar.bz2

+++++++++++++++++++++++++++++++++++++++++++++

简介

参数:

-c  :建立一个压缩档案的参数指令(create 的意思);

-x  :解开一个压缩档案的参数指令!

-t  :查看 tarfile 里面的档案!

特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!

因为不可能同时压缩与解压缩。

-z  :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?

-j  :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?

-v  :压缩的过程中显示档案!这个常用,但不建议用在背景执行过程!

-f  :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

例如使用『 tar -zcvfP tfile sfile 』就是错误的写法,要写成

『 tar -zcvPf tfile sfile 』才对喔!

-p  :使用原档案的原来属性(属性不会依据使用者而变)

-P  :可以使用绝对路径来压缩!

-N  :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的档案中!

--exclude FILE:在压缩的过程中,不要将 FILE 打包!

范例:

范例一:将整个 /etc 目录下的档案全部打包成为 /tmp/etc.tar

[[email protected] ~]# tar -cvf /tmp/etc.tar /etc  <==仅打包,不压缩!

[[email protected] ~]# tar -czvf /tmp/etc.tar.gz /etc  <==打包后,以 gzip 压缩

[[email protected] ~]# tar -cjvf /tmp/etc.tar.bz2 /etc  <==打包后,以 bzip2 压缩

# 特别注意,在参数 f 之后的档案档名是自己取的,我们习惯上都用 .tar 来作为辨识。

# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~

# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~

# 上述指令在执行的时候,会显示一个警告讯息:

# 『tar: Removing leading `/‘ from member names 』那是关于绝对路径的特殊设定。

范例二:查阅上述 /tmp/etc.tar.gz 档案内有哪些档案?

[[email protected] ~]# tar -tzvf /tmp/etc.tar.gz

# 由于我们使用 gzip 压缩,所以要查阅该 tar file 内的档案时,

# 就得要加上 z 这个参数了!这很重要的!

范例三:将 /tmp/etc.tar.gz 档案解压缩在 /usr/local/src 底下

[[email protected] ~]# cd /usr/local/src

[[email protected] src]# tar -xzvf /tmp/etc.tar.gz

# 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,

# 我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz ,

# 则解开的目录会在 /usr/local/src/etc 呢!另外,如果您进入 /usr/local/src/etc

# 则会发现,该目录下的档案属性与 /etc/ 可能会有所不同喔!

范例四:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已

[[email protected] ~]# cd /tmp

[[email protected] tmp]# tar -xzvf /tmp/etc.tar.gz etc/passwd

# 我可以透过 tar -tzvf 来查阅 tarfile 内的文件名称,如果单只要一个档案,

# 就可以透过这个方式来下达!注意到! etc.tar.gz 内的根目录 / 是被拿掉了!

范例五:将 /etc/ 内的所有档案备份下来,并且保存其权限!

[[email protected] ~]# tar -czvpf /tmp/etc.tar.gz /etc

# 这个 -p 的属性是很重要的,尤其是当您要保留原本档案的属性时!

范例六:在 /home 当中,比 2005/06/01 新的档案才备份

[[email protected] ~]# tar -N ‘2005/06/01‘ -czvf home.tar.gz /home

范例七:我要备份 /home, /etc ,但不要 /home/dmtsai

[[email protected] ~]# tar --exclude /home/dmtsai -czvf myfile.tar.gz /home/* /etc

范例八:将 /etc/ 打包后直接解开在 /tmp 底下,而不产生档案!

[[email protected] ~]# cd /tmp

[[email protected] tmp]# tar -cvf - /etc | tar -xvf -

# 这个动作有点像是 cp -r /etc /tmp 啦~依旧是有其有用途的!

# 要注意的地方在于输出档变成 - 而输入档也变成 - ,又有一个 | 存在~

# 这分别代表 standard output, standard input 与管线命令啦!

# 这部分我们会在 Bash shell 时,再次提到这个指令跟大家再解释啰!

++++++++++++++++++++++++++++++++++++++++++++

tar如何解压文件到指定的目录?

tar czvf mysql.tar.gz /var/lib/mysql
压缩的文件,我想解压到当前目录下,而不是绝对路径下,该如何解压?
tar cxvf mysql.tar.gz 的话,会覆盖 /var/lib/mysql 下全部文件吧?我现在就一个表坏了,想单独恢复一个表的资料,而不是恢复全部数据库,所以要解压到指定的目录下,再把那个表资料找不来恢复。

============================================

#tar zxvf mysql.tar.gz -C /home/aaa

============================================

tar zxvf mysql.tar.gz -C /home/aaa
这样的话,解压后的目录结构是怎么样的?
/home/aaa/var/lib/mysql 吗?

============================================

试下就知道了....

============================================

归档里面的所有文件均是相对引用,归档解压缩(释放)在了当前目录。归档文件总是释放到当前目录,为的是防止破坏文件系统中重名的文件。
所以,楼主的解压缩不会覆盖/var/lib/mysql,只会释放在当前目录先,即./var/lib/mysql如果想覆盖的话,在归档和解压时请使用-P参数:
tar zcvf mysql.tar.gz -P /var/lib/mysql
tar -Pzxvf mysql.tar.gz

============================================

时间: 2024-12-18 23:08:01

linux -- tar 命令的相关文章

Linux tar 命令参数及用法详解--Linux打包备份命令

linux tar命令参数及用法详解--linux打包备份命令 tar命令 tar - tar 档案文件管理程序的 GNU 版本.下面将逐个介绍其含义tar [-cxtzjvfpPN] 文件与目录 ....常用参数:-c :建立一个压缩文件的参数指令(create 的意思):-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的文件!特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩.-z :是否同时具有 gzip 的属性?亦即是否需

Linux tar命令高级用法——备份数据

Linux tar命令高级用法——备份数据 2015-12-31 Linux学习 Linux上有功能强大的tar命令,tar最初是为了制作磁带备份(tape archive)而设计的,它的作用是把文件和目录备份到磁带中,然后从磁带中提取或恢复文件.现在我们可以使用tar来备份数据到任何存储介质上.它是文件级备份,不必考虑底层文件系统类别,并且支持增量备份. 1.部分常用选项 ●-z, --gzip:使用gzip工具(解)压缩,后缀一般为.gz ●-c, --create:tar打包,后缀一般为.

linux tar命令简介

一.使用介绍 1.名词区分 打包:将一大堆文件或目录变成一个总的文件[tar命令] 压缩:将一个大的文件通过一些压缩算法变成一个小文件[gzip,bzip2等] Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令). 2.tar语法 语法:tar [主选项+辅选项] 文件或目录 使用该命令时,主选项必须有,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用. 主选项:

linux Tar 命令参数详解

tar命令 1. 作用 tar命令是Unix/Linux系统中备份文件的可靠方法,几乎可以工作于任何环境中,它的使用权限是所有用户. 2. 格式 tar [主选项+辅选项] 文件或目录 eg: tar zxvf libiconv-1.13.tar.gz ./libiconv tar cxvf libiconv-1.13.tar.gz ./*.php 3. 主要参数 使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用. 3.1 主选项: -c 创建新的档案文件

Linux tar命令解压时提示时间戳异常的处理办法

在Linux服务器上的文件会有3个时间戳信息 访问时间(Access).修改时间(Modify).改变时间(Change),都是存放在该文件的Inode里面 问题描述: 公司网站是前后端分离的,所有的静态页面全部都需要单独部署,使用的是云服务.部署方式是通过 jenkins 从指定的 SVN 地址把 前端静态页面检出到 jenkins服务器,且每次检出的代码前都会把上一次的全部删除掉,也就是在检出代码的时候所有的文件都是重新创建的,时间戳每次都是当前系统的时间:由于公司出口带宽比较小,为了提高传

Linux tar 命令[转]

一.使用介绍 1.名词区分 打包:将一大堆文件或目录变成一个总的文件[tar命令] 压缩:将一个大的文件通过一些压缩算法变成一个小文件[gzip,bzip2等] Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令). 2.tar语法 语法:tar [主选项+辅选项] 文件或目录 使用该命令时,主选项必须有,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用. 主选项:

Linux tar 命令用法

tar 命令可以为linux的文件和目录创建档案.利用 tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件.tar 最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案.利用 tar 命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的. 首先要弄清两个概念:打包和压缩.打包是指将一大堆文件或目录变成一个总的文件:压缩则是将一个大的文件通过一些压缩算法变成一个小文件. 为什么

linux tar命令详解

1. 利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的. 2. tar 命令参数 -A或--catenate:新增文件到以存在的 备份文件: -B:设置区块大小: -c或--create:建立新的备份文件: -C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项. -d:记录文件的差别: -x或--extract或--get:从备份文件中还原文件: -t或--list:列出备份文件的内容: -z

(转)使用 linux tar 命令压缩与解压文件

原文链接 http://www.cnblogs.com/qq78292959/archive/2011/07/06/2099427.html tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的参数是根据需要在压缩或解压档案时可选的. -z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到标准输出

linux tar命令及解压总结

把常用的tar解压命令总结下,当作备忘: tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的参数是根据需要在压缩或解压档案时可选的. -z:有gzip属性的 -j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程 -O:将文件解开到标准输出 下面的参数-f是必须的 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只