额
分类: LINUX
2011-12-13 10:53:54
Linux 压缩文件的后缀名
*.Z
compress 程序压缩的文件;
*.bz2
bzip2 程序压缩的文件;
*.gz
gzip 程序压缩的文件;
*.tar
tar 程序打包的数据,并没有压缩过;
*.tar.gz
tar 程序打包的文件,其中并且经过 gzip 的压缩。
compress:
语法:
# compress
[-d] filename
参数说明:
-d :解压缩的参数!
示例:
# compress man.config
压缩
# compress -d man.config.Z
# uncompress man.config.Z
解压缩
gzip, zcat:
语法:
# gzip [-d#] filename <==压缩与解压缩
# zcat filename.gz <==读取压缩文件内容
参数说明:
-d :解压缩的参数!
-# :压缩等级, 1 最不好, 9 最好, 6 是默认值!
示例:
# gzip man.config
会产生 man.config.gz 这个文件
# zcat man.config.gz
会读取出 man.config 的内容
# gzip -d man.config.gz
# gunzip man.config.gz
解压缩,产生 man.config 这个文件
-1 是最差的压缩比,但是压缩速度最快,而 -9 虽然可以达到较佳的压缩比(经过压缩之后,档案比较小一些!),但是却会损失一些速度! -6 是默认值
bzip2, bzcat:
语法:
# bzip2
[-dz] filename <==压缩解压缩命令
# bzcat filename.bz2 <==读取压缩文件内容命令
参数说明:
-d :解压缩
-z :压缩
示例:
# bzip2 –z man.config
压缩
# bzcat man.config.bz2
读取
# bzip2 –d man.config.bz2
# bunzip2 man.config.bz2
解压缩
tar:
语法:
# tar [-zxcvfpP] filename
# tar -N 'yyyy/mm/dd' /path -zcvf target.tar.gz source
参数说明:
-z :同时具有 gzip 的属性
-x :解开一个压缩文件的参数命令
-t :查看 tarfile 里面的文件
-c :建立一个压缩文件的参数命令
-v :压缩的过程中显示文件
-f :使用文件或文件夹名,在 f 之后要立即接文件或文件夹名,不要再加参数
要写成『 tar -zcvPf tfile sfile』才对
-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中
--exclude FILE:在压缩的过程中,不要将 FILE 打包!
示例:
# tar -cvf directory.tar directory
只将文件夹整合打包成一个文件
# tar -zcvf directory.tar.gz
directory
除了将文件夹打包外,同时以 gzip 压缩
# tar -zcvf filename.tar.gz
/home/test/*
将 /home/test/ 这个文件夹下的文件全部打包并压缩成为一个 filename.tar.gz 的文件
# tar -xvf
directory.tar
解 tar 的封包,因为没有使用gzip (.tar 而非 .tar.gz),所以只要使用 –xvf 即可!不需要加上 z ,否则会显示有问题!
# tar -zxvf directory.tar.gz
这个就是有加上 gzip 的压缩的结果,所以需要加上 –z
# tar –ztvf directory.tar.gz
这个 t 可以用来查看 tar 里面的文件信息,而不是将其解开。
# tar -zcvPf home.tar.gz
/home
则建立起来的压缩文件内文件(夹)为绝对路径
请注意,使用这个 P 的参数时,不要将 P 加在 f 后面,因为
f 之后要立即接文件名才行。
# tar -N '2002/06/25'
-zcvf home.tar.gz /home
上面是说 在 /home 这个文件夹中,比 2002/06/25 日还要新的文件才会被打包进入 home.tar.gz 这个文件中。
# tar -zcvf host.tar.gz / --exclude /mnt
--exclude /proc
上面是说,将根文件夹的所有数据都打包进
host.tar.gz 这个文件中,但是 /mnt 及
/proc 则不打包。
# tar -cvf - /home | tar -xvf –
直接以管线命令『 pipe 』来进行压缩、解压缩的过程。在上面的例子中,我们想要『将 /home 底下的数据直接 copy 到目前所在的路径,也就是 /root 底下来』,但是又觉得使用 cp -r 有点麻烦,那么就直接以这个打包的方式来打包,其中,命令里面的 - 就是表示那个被打包的文件。由于我们不想要让过渡文件存在,所以就以这一个方式来进行复制。
cpio:
语法:
# cpio -covB > [file|device]<==备份# cpio -icduv < /dev/st0
将存储设备的数据还原回来!
# cpio -icdvt < /dev/st0 >
/tmp/content
将存储设备的内容(文件名而已)转存到
/tmp/content
# find / -type -f | cpio -o >
/tmp/root.cpio
# cpio -i < /tmp/root.cpio
先输出到 /tmp/root.cpio 这个文件,然后再给他还原回来!