222
发新话题
打印

Linux下的压缩打包(tar命令)

Linux下的压缩打包(tar命令)

Linux下的压缩打包--tar命令详解

Windows下最常见的压缩文件只有两种,.zip和.rar。可是Linux就不同了,有.Z、bz2、.gz、.tar、.tar.gz等众多的压 缩文件名,它们分别对应了各种压缩打包命令。Linux下最常用的打包命令就是tar,使用tar命令打包后,就可以用其它的命令来进行压缩了。tar命令的使用方法如下:

tar [-cxtzjvfpPN] 文件与目录
参数说明:
-c :建立一个打包文件;
-x :解开一个打包文件;
-t :查看 tar包里面的文件;
(特别注意,在选择参数时,c/x/t仅能存在一个,不可同时存在,因为不可能同时压缩与解压缩。)
-z :打包后用gzip压缩,生成.tar.gz文件;
-j :打包后用zip2压缩,生成.tar.bz2文件;
-v :压缩的过程中显示文件;
-f :使用文件名,请留意,在f之后要立即接文件名,不要再加其它参数;
-p :保持原文件的属性;
-P :使用绝对路径来压缩;
-N :设定日期(yyyy/mm/dd),比后面接的日期还要新的文件才会被打包进新建的文件中;
--exclude FILE:在打包的过程中,不要将FILE打包。

举几个例子:

例一:将整个/etc目录下的文件全部打包成为/tmp/etc.tar
tar -cvf /tmp/etc.tar /etc  #仅打包,不压缩
tar -zcvf /tmp/etc.tar.gz /etc  #打包后,以gzip压缩
tar -jcvf /tmp/etc.tar.bz2 /etc  #打包后,以bzip2压缩

例二:查阅上述/tmp/etc.tar.gz文件内有哪些文件
tar -ztvf /tmp/etc.tar.gz

例三:将/tmp/etc.tar.gz文件解压缩到/usr/local/src下
cd /usr/local/src   #先将工作目录变换到/usr/local/src下
tar -zxvf /tmp/etc.tar.gz
  
例四:只将/tmp/etc.tar.gz内的etc/passwd解压到/tmp下
cd /tmp
tar -zxvf /tmp/etc.tar.gz etc/passwd

例五:将/etc内的所有文件备份下来,并且保存其权限!
tar -zxvpf /tmp/etc.tar.gz /etc

例六:在/home当中,比2005/06/01新的文件才备份
tar -N '2005/06/01' -zcvf home.tar.gz /home

例七:备份/home、/etc,但不要/home/dmtsai
tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

例八:将/etc打包后直接解开在/tmp底下,而不产生文件!
cd /tmp
tar -cvf - /etc | tar -xvf -
成功只有努力去奋斗!

TOP

zip 以后大家在对国外用户的时候,记得不要使用rar文件
做好站 !  做好站 !
一个代表决心,一个代表质量!

TOP

回复 2# 的帖子

为什么对国外用户不适用rar呀
宝剑锋从磨砺出
梅花香自苦寒来

TOP

国外是很注意版权这个东西的.
其实rar不是很好啊. 只不错解压功能比较强大.
推荐一个软件 7z 很好 不过也不建议压缩成 z格式
7z是免费软件 www.7-zip.org

TOP

回复 4# 的帖子

下载这个软件试用一下,看看效果
成功只有努力去奋斗!

TOP

因为RAR是要收费的,而ZIP文件格式好象是开放的,另外在Linux下,除了.7z格式外,.tar.bz2格式的压缩包体积是最小的

TOP

原来是这样的
.tar.bz2格式的压缩包还没有听说过
长见识了
成功只有努力去奋斗!

TOP

发新话题