E.G.:
$ ls -l | grep a.exp.tar
-rw-rw-r-- 1 root root 10240 Nov 7 15:25 a.exp.tar
$ gzip -9vc a.exp.tar > a.exp.tar.gz
a.exp.tar: 86.1%
$ ls -l | grep a.exp.tar
-rw-rw-r-- 1 root root 10240 Nov 7 15:25 a.exp.tar
-rw-rw-r-- 1 root root 1449 Nov 7 15:28 a.exp.tar.gz
$ rm a.exp.tar
$ gunzip -v a.exp.tar.gz
a.exp.tar.gz: 86.1% -- replaced with a.exp.tar
$ ls -l | grep a.exp.tar
-rw-rw-r-- 1 root root 10240 Nov 7 15:28 a.exp.tar
$ tar -xvf a.exp.tar
a.exp
$
2. usage: gzip压缩后保持原文件的参数是什么?
最简提示:
tar zxvf XXXX.tar.gz
tar jxvf XXXX tar.bz2
1.压缩一组文件为tar.gz后缀。
# tar cvf backup.tar /etc #gzip -q backup.tar
或
# tar cvfz backup.tar.gz /etc/
2.释放一个后缀为tar.gz的文件。
#gunzip backup.tar.gz #tar xvf backup.tar
或
# tar xvfz backup.tar.gz
3.用一个命令完成压缩
#tar cvf - /etc/ | gzip -qc >; backup.tar.gz
4.用一个命令完成释放
# gunzip -c backup.tar.gz | tar xvf -
5.如何解开tar.Z的文件?
# tar xvfz backup.tar.Z 或 # uncompress backup.tar.Z #tar xvf
backup.tar
6.如何解开.tgz文件?
#gunzip backup.tgz
7.如何压缩和解压缩.bz2的包?
#bzip2 /etc/smb.conf
这将压缩文件smb.conf成smb.conf.bz2
#bunzip2 /etc/smb.conf.bz2
这将在当前目录下还原smb.conf.bz2为smb.conf
(bzip2 -d也一样)
注: .bz2压缩格式不是很常用,你可以man bzip2
3. gzip parameters:
gzip是一个非常流行的压缩工具,他通常和tar命令一起使用。语法:
gzip [参数] 文件列表,参数有:
-a
ASCII文本模式:按照约定转化文件结尾标志,这个选项只支持非UNIX操作系统,在msdos下,回车和换行符在压缩的时候被转换成换行符,解压
的时候再转换回来。
-c
输出到标准输出,保留原文件不变,如果有几个输入文件,则输出保持一定的顺序。
-d
解压缩。
-f
强制压缩。
-l
详细显示文件的压缩情况:
1, 压缩文件的大小。
2, 未压缩前的大小。
3, 压缩比和被压缩的文件名。
4, 如果和-v参数一起使用,还显示下列信息:
a, 压缩方法。
b, 未压缩数据的32位CRC码。
c, 文件的更改时间。
-q
不显示所有警告信息。
-r
递归压缩目录结构。
tar
tar是一个很流行的文件备份和压缩工具,用于建立系统备份或建立单一文件。Tar的语法很麻烦,现简单介绍如下:
tar crtux[fmtVwF] 文件列表。参数有:
参数
说明
参量
指定获得档案,可以是以下几个参数。
C
建立一个新档案或覆盖一个已存在的档案。
R
在文件列表中命名。
A
添加文件到备份包中。
T
列出压缩文件的列表。
U
从压缩文件里面解压缩文件。
文件列表
要处理的文件列表,可以包括统配符。如果处理的是目录,那么则处理目录及其下的所有文件和文件夹。
-b
指定分块数量n,n×512k,n的默认值是20。
-m
告诉tar解压缩时不需修改时间,修改时间就是解压缩的时间。
-c 目录名
更改目录。
-k
保留已存在的文件,不从压缩文件中覆盖。
-v
生成有卷标的压缩文件。
-z
使用gzip解压缩文件。
比如解开一个名叫9s.tgz的压缩文件:
tar zxvf 9s.tgz
又例如要把/home/bbs下的所有文件打包成bbs.bak.tgz,可以这样:
tar zvcf bbs.bak.tgz /home/bbs/*