Linux压缩与解压缩工具
一、简述
压缩是一种通过特定的算法来减少计算机文件大小的机制,因减少文件的大小,使文件能通过网络实现更快传输,此外还减少了文件的磁盘占用空间。反向就是解压缩
二,工具
1,compress / umcompress
后缀名 .Z,很老的压缩工具,已经过时了。
2,gip , bzip2, xz
(1) gzip / gunzip :压缩 / 解压缩 都会删除原文件
语法:gzip [选项] 压缩(解压缩)文件名
后缀名:.gz
# 常用选项: # -# : 压缩比,默认为6,范围1到9 # -d : 解压缩(gunzip) # -c : 将压缩后的结输出至标准输出
zcat somefile.gz : 不解压查看gzip压缩后文件的内容
例如:
# 压缩指定目标路径存放 [root@xuegod63 tmp]# gzip -c /etc/passwd > /tmp/passwd.gz [root@xuegod63 tmp]# ls -hl total 24K -rw-r--r--. 1 root root 672 Apr 20 11:05 passwd.gz -rwxr-xr-x. 1 root root 20K Apr 20 10:47 rc.sysinit # 解压缩 [root@xuegod63 tmp]# gzip -d /tmp/passwd.gz [root@xuegod63 tmp]# ls -hl total 24K -rw-r--r--. 1 root root 1.6K Apr 20 11:05 passwd -rwxr-xr-x. 1 root root 20K Apr 20 10:47 rc.sysinit
(2) bzip2 / bunzip2 : 压缩 / 解压缩 都会删除原文件
语法:bzip2 [选项] 压缩(解压缩)文件名
后缀名:.bz2
# 常用选项: # -# : 压缩比,默认为6 范围为 1 - 9 # -d : 解压缩(bunzip2) # -c : 将压缩后的结输出至标准输出 # -k : 保留原文件
bzcat somefile.bz2 : 不解压查看bz2压缩后文件的内容
(3) xz / unxz 压缩 / 解压缩 都会删除原文件
语法:xz [选项] 压缩(解压缩)文件名
后缀名:.xz
# 常用选项: # -# : 压缩比,默认为6 范围为 1 - 9 # -d : 解压缩(unxz) # -c : 将压缩后的结输出至标准输出 # -k : 保留原文件
xzcat somefile.xz 不解压查看xz压缩后的文件的内容
gzip, bzip2,xz 都不支持对目录的压缩,并具压缩和解压都会删除原文件。
3,zip / unzip : 归档压缩
zip是压缩程序,unzip是解压程序
语法:zip ZIPFILE.zip src_file...
[root@xuegod63 ~]# zip a.zip /etc/passwd # zip all.zip *.jpg # 这条命令是将所有.jpg的文件压缩成一个zip包 压缩一个目录
[root@xuegod63~]# zip -r grub.zip /boot/grub # 压缩一个目录 [root@xuegod63Desktop]# unzip grub.zip -d /opt/ # 解压
4,tar 归档并压缩
能实现将多个文件打包成单个文件,即为归档文件
语法: tar [options] -f TARFILE.tar SRC_FILE...
(1) 创建归档:
tar
-c : create, 创建
-v : 显示详细信息
-f : FILENAME.tar
# 把两个目录或目标+文件打包成一个软件包 [root@xuegod63 Desktop]# tar -cvf ss.tar /boot/ /etc/passwd
(2) 展开归档:
tar
-x : extract , 提取
-v : 显示详细信息
-f : FILENAME.tar
[root@xuegod63 Desktop]# tar -xvf ss.tar
(3) 查看归档:
tar
-t : 查看 tarfile 里面的文件
-f : FILENAME.tar
[root@xuegod63 Desktop]# tar -tvf ss.tar #更为详细信息
(4) tar可直接通过选项调用压缩工具执行压缩或解压
-z : gzip
-j : bzip2
-J : xz
归档并压缩组方式:-zcf, -jcf, -Jcf
后缀名:.tar.[ gz|bz2|xz ]
解压缩:-zxf , -jxf , -Jxf 组合方式,也可以简写 tar xf TARFILE.tar[.gz|.bz2|.xz] 不管是用什么方式压缩的,都会以对应的工具来解压缩
如果是多选项连起来写,那f选项必须后面跟着是TARFILE.tar[.gz|.bz2|.xz]
- 可加可不加都行
-C /path/to/somedir 可以指定解压的目录
例如:
# 把/boot目录压缩至/tmp目录下 [root@xuegod63 tmp]# pwd /tmp # gzip [root@xuegod63 tmp]# tar zcf boot.tar.gz /boot/ [root@xuegod63 tmp]# file boot.tar.gz boot.tar.gz: gzip compressed data, from Unix, last modified: Mon Apr 20 12:48:37 2015 # bzip2 [root@xuegod63 tmp]# tar jcf boot.tar.bz2 /boot [root@xuegod63 tmp]# file boot.tar.bz2 boot.tar.bz2: bzip2 compressed data, block size = 900k # xz [root@xuegod63 tmp]# tar Jcf boot.tar.xz /boot [root@xuegod63 tmp]# file boot.tar.xz boot.tar.xz: xz compressed data # 把/tmp/boot.tar.gz压缩文件解压至 /tmp/test/ 目录中 [root@xuegod63 tmp]# tar xf /tmp/boot.tar.gz -C /tmp/test/ [root@xuegod63 tmp]# ls /tmp/test/ boot
THE END .
本文出自 “学神IT-Linux讲师-MK” 博客,请务必保留此出处http://xuegod.blog.51cto.com/9708186/1636328
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。