Linux系统下常用的压缩解压缩命令
1、tar
(1)作用:linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件
(2)语法:tar(选项)(参数)
选项:-c 打包 创建打包文件(归档)
-f 指定打包的文件名(-f 和filename 必须放在一起)
-r 将文件追加至归档文件中
-t 不解压的情况下直接查看归档文件里面的内容
-v 显示解压缩过程
-x 执行解压缩、通常和-v(显示解压缩过程) -f结合使用
-C 解压到指定目录下
--exclude=File 打包时排除File这个文件
[root@localhost ~]# tar -cf dayi123.tar dayi123 #将目录dayi123打包
[root@localhost ~]# tar -rf dayi123.tar baoding.log #将baoding.log追加到dayi123.tar中
[root@localhost ~]# tar -xvf dayi123.tar #解包
dayi123/
dayi123/messages-20170405
dayi123/test
dayi123/instll.log
dayi123/sn.txt
baoding.log
2、compress
(1)作用:使用“Lempress-Ziv”编码压缩数据文件。compress是个历史悠久的压缩程序,文件经它压缩后,其名称后面会多出".Z"的扩展名
(2)语法:compress [-dfvcVr] [-b maxbits] [file ...]
选项:-d: 解压缩,相当于uncompress
-c: 结果输出至标准输出,不删除原文件
-v: 显示详情
zcat file.Z 直接查看压缩文件的内容不用先解压
[root@dayi123 ~]# compress 1.txt #用compress压缩,会删除原文件
[root@dayi123 ~]# compress -d 1.txt #解压缩
[root@dayi123 ~]# compress -c messages > messages.Z #压缩,不会删除原文件
[root@dayi123 ~]# zcat messages #不解压,查看原文件中内容
Apr 5 10:38:21 dayi123 kernel: SRAT: PXM 0 -> APIC 36 -> Node 0
Apr 5 10:38:21 dayi123 kernel: SRAT: PXM 0 -> APIC 38 -> Node 0
Apr 5 10:38:21 dayi123 kernel: SRAT: PXM 0 -> APIC 40 -> Node 0
Apr 5 10:38:21 dayi123 kernel: SRAT: PXM 0 -> APIC 42 -> Node 0
3、gzip
(1)作用:gzip命令用来压缩文件。是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。
(2)语法:gzip [OPTION]... FILE ...
选项 �Cd: 解压缩,相当于gunzip
-c: 将压缩或解压缩的结果输出至标准输出
-#:1-9,指定压缩比,值越大压缩比越大
[root@dayi123 ~]# gzip messages
[root@dayi123 ~]# ll messages.gz
-rw-r--r--. 1 root root 55384 Apr 7 22:21 messages.gz
[root@dayi123 ~]# gzip -9 messages
[root@dayi123 ~]# ll messages.gz
-rw-r--r--. 1 root root 54777 Apr 7 22:21 messages.gz
(4)gzip配合tar打包压缩使用
1)打包压缩:tar �Czcf filename.tar.gz filename
tar �Czcvf filename.tar.gz filename
2)解压缩: tar �Cxzf filename.tar.gz filename
tar �Cxzvf filename.tar.gz filename
[root@dayi123 ~]# tar -zcvf dayi123.tar.gz dayi123 #打包压缩
dayi123/
dayi123/messages-20170405
dayi123/test
dayi123/instll.log
dayi123/sn.txt
[root@dayi123 ~]# tar -xzvf dayi123.tar.gz #解压缩
dayi123/
dayi123/messages-20170405
dayi123/test
dayi123/instll.log
dayi123/sn.txt
3、bzip2
(1)作用:bzip2命令用于创建和管理(包括解压缩)“.bz2”格式的压缩包
(2)语法:bzip2(选项)(参数)
常用选项:-k 保留源文件
-d 解压缩相当于 bunzip2
-# 指定压缩比
bzcat file
[root@dayi123 ~]# bzip2 instll.log #普通压缩
[root@dayi123 ~]# ll instll.log*
-rwxr-xr--. 1 root root 14 Mar 31 09:15 instll.log.bz2
[root@dayi123 ~]# bzip2 -d instll.log.bz2 #解压
[root@dayi123 ~]# bzip2 -k instll.log #压缩并保留源文件
[root@dayi123 ~]# ll instll.log*
-rwxr-xr--. 1 root root 0 Mar 31 09:15 instll.log
-rwxr-xr--. 1 root root 14 Mar 31 09:15 instll.log.bz2
[root@dayi123 ~]# bzcat instll.log.bz2 #不解压直接查看文件内容
hahahahhahahh
4)bzip2配合tar打包压缩
1)打包压缩:tar �Cjcf filename.tar.bz2 filename
tar �Cjcvf filename.tar.bz2 filename
2)解压缩: tar �Cxjf filename.tar.bz2 filename
tar �Cxjvf filename.tar.bz2 filename
[root@dayi123 ~]# tar -jcvf dayi123.tar.gz dayi123 #打包压缩
dayi123/
dayi123/messages-20170405
dayi123/test
dayi123/instll.log
dayi123/sn.txt
[root@dayi123 ~]# tar -xjf dayi123.tar.gz #解压缩
4、xz
(1)作用:压缩命令,压缩的更彻底
(2)用法:xz [OPTION]... FILE ...
参数:-k 保留源文件
-d 执行解压缩
-# 指定压缩比
xzcat 直接查看压缩文件内容
[root@dayi123 ~]# xz instll.log #压缩
[root@dayi123 ~]# xz -d instll.log.xz #解压
[root@dayi123 ~]# xz -k instll.log #压缩时保留源文件
[root@dayi123 ~]# xzcat instll.log.xz #直接查看压缩文件中的内容
hahahahhahahh
(4)xz结合tar打包压缩
1)打包压缩:tar �CJcf filename.tar.xz filename
tar �Cjcvf filename.tar.xz filename
2)解压缩: tar �CxJf filename.tar.xz filename
tar �CxJvf filename.tar.xz filename
[root@dayi123 ~]# tar -Jcf dayi123.tar.xz dayi123 #打包并压缩
[root@dayi123 ~]# tar -Jxvf dayi123.tar.xz dayi123 #解压缩,显示详细过程
dayi123/
dayi123/messages-20170405
dayi123/test
dayi123/instll.log
dayi123/sn.txt
[root@dayi123 ~]# tar --exclude=messages-20170405 -Jxvf dayi123.tar.xz dayi123
#打包压缩时排除messages-20170405文件
dayi123/
dayi123/test
dayi123/instll.log
dayi123/sn.txt
5、zip
(1)作用:zip命令可以用来解压缩文件,或者对文件进行打包操作
(2)语法:zip(选项)(参数)
常用参数:-r 递归压缩
-p 将压缩结果输出屏幕上
unzip 解压缩
[root@dayi123 ~]# zip dayi123.zip dayi123 #对目录进行压缩
adding: dayi123/ (stored 0%)
[root@dayi123 ~]# ll dayi123.zip
-rw-r--r--. 1 root root 166 Apr 7 21:14 dayi123.zip
[root@dayi123 ~]# zip sn.txt.zip sn.txt #对文件压缩
adding: sn.txt (deflated 21%)
[root@dayi123 ~]# ll sn.txt
-rw-r--r--. 1 root root 257 Mar 29 07:38 sn.txt
[root@dayi123 ~]# unzip dayi123.zip #解压
Archive: dayi123.zip
creating: dayi123/
6、cpio
(1)作用:cpio是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“.cpio”或者“.tar”结尾的文件。
(2)语法:cpio [选项] > 文件名或者设备名
cpio [选项] < 文件名或者设备名
选项: -o 将文件拷贝打包成文件或者将文件输出到设备上
-i 解包,将打包文件解压或将设备上的备份还原到系统
-t 预览,查看文件内容或者输出到设备上的文件内容
-v 显示打包过程中的文件名称。
-d 解包生成目录,在cpio还原时,自动的建立目录
-c 一种较新的存储方式
[root@dayi123 ~]# find /root -print | cpio -ov >root.cpio #将root目录备份
/root
/root/.bash_logout
/root/.bash_profile
……
16241 blocks
[root@dayi123 ~]# ll root.cpio
-rw-r--r--. 1 root root 8315392 Apr 7 21:30 root.cpio
[root@dayi123 ~]# cpio -tv < root.cpio #查看备份的内容
dr-xr-x--- 5 root root 0 Apr 7 21:30 /root
-rw-r--r-- 1 root root 18 Dec 28 2013 /root/.bash_logout
本文出自 “dayi123” 博客,请务必保留此出处http://dayi123.blog.51cto.com/12064061/1914043