压缩和解压缩文件

常见压缩方式

.zip  格式

   压缩:zip [压缩后路径.zip] [被压缩文件路径]

         zip -r (-r压缩目录用)

 解压缩:unzip [压缩文件名]

 解压到指定的文件夹中:unzip [压缩文件名] -d [目标目录]

.gz   格式

   压缩:gzip [源文件]  (这种格式压缩后源文件消失)

         gzip -c [源文件] > [压缩后文件名]  (保留源文件)

         gzip -r [目录]  (压缩目录下所有的子文件,但不压缩目录)

 解压缩:gzip -d [压缩文件]

         gunzip [压缩文件]

.bz2  格式

   压缩:bzip2 [源文件]  (不保留源文件)

         bzip2 -k [源文件]  (保留原文件)

     注:(.bz2格式不能压缩目录)

 解压缩:bzip -d [压缩文件]

         bunzip [压缩文件]

压缩命令

tar  打包压缩文件

  tar [参数] [打包后的文件名,路径] [源文件]

      -c (打包)

      -v (显示过程)

      -f (指定打包后的文件名)

      -x (解包)

      -z (以.gz格式压缩)

      -j (以.bz2格式压缩)

      -t (测试)

      -C (指定解压后的文职)

例:tar -zcvf /tmp/shasha.tar.gz  /root/shasha

    tar -jcvf

解压缩:tar -zxvf /tmp/shasha.tar.gz -C /root/

只测试了解压缩包内的内容,不真正解压:tar -ztvf /tmp/shasha.tar.gz

总结:-j 可以更换压缩方式

压缩:tar -jcv -f filename.tar.bz2 源文件或目录名称

查询:tar -jtv -f filename.tar.bz2

解压缩:tar -jxv -f filename.tar.bz2 -C 解压后的目录

仅解开单一文件的方法

1.首先确认要解压的单个文件的名称,如“123”

    tar -jtv -f /root/etc.tar.bz2 | grep '123(要解压的文件名)

2.将该文件解开,语法实例方法如下

    tar -jxv -f 打包文件.tar.bz2 待解开文件名

    例子:tar -jxv -f /root/etc.tar.bz2 123

123为找到的待解压的文件名

打包某目录,但不含该目录下的某些文件

--exclude    不包含

例子:tar -jcv -f /root/sysytem.tar.bz2 --exclude=/root/etc* \

          > --exclude=/root/sysytem.tar.bz2 /etc/root

"\ " 表示换行

备份某个时刻之后新的文件

备份一个新的文件,不备份旧的。这里要用到两个参数:--newer-mtime 和 --newer。--newer 表示后续的日期包含“mtime 与 ctime”

,--newer-mtime 则表示mtime 

1.find 找出比/etc/passwd 新的文件

[ ~]# find /etc/ -newer /etc/passwd

......

2.确定时间开始备份

[ ~]# tar -jcv -f /root/etc.newer.then.passwd.tar.bz2 --newer-mtime='2008/09/12' /etc/*

3.可以用:tar -jtv -f 查看压缩文件中的内容