Linux学习
一、压缩打包介绍
二、gzip压缩工具
三、bzip2压缩工具
四、xz压缩工具
一、压缩打包介绍
- Windows下:rar、zip、7z
- Linux下:zip、gz、bz2、xz、tar.gz、tar.bz2、tar.xz
- 压缩可以节省磁盘空间、节省网络传输带宽资源及传输速率;
二、gzip压缩工具
- 压缩工具:gzip、bzip2、xz、zip、tar(打包和压缩)
- gzip工具使用
- 准备一个大的文件,进入/tmp下,创建d6z目录
- find /etc -type f -name “*.conf” -exec cat {} >> 1.txt ;查找/etc目录下所有.conf文件查看并追加到当前目录下的1.txt文档内;
- 文档不够大,多追加几次,查看大小:du -sh 1.txt
操作
[root@01 d6z]# find /etc -type f -name "*.conf" -exec cat {} >>a.txt \;
[root@01 d6z]# !d
du -sh a.txt
8.0M a.txt
压缩a.tx
[root@01 d6z]# du -sh a.txt
8.0M a.txt
[root@01 d6z]# wc -l a.txt
148074 a.txt
[root@01 d6z]# gzip a.txt
[root@01 d6z]# ls
a.txt.gz
[root@01 d6z]# du -sh a.txt.gz
1.3M a.txt.gz
[root@01 d6z]#
解压缩a.txt.gz
[root@01 d6z]# gzip -d a.txt.gz
[root@01 d6z]# ls
a.txt
[root@01 d6z]# du -sh a.txt
5.3M a.txt
[root@01 d6z]#
- 压缩前为8M,压缩后为1.3M,解压缩后为5.3M,是因为追加之后的文件不是真实的空间,压缩、解压缩之后为真实大小;
- gzip -1(1-9为压缩级别,默认为6,1级别为最不严谨的压缩,9为最严谨的压缩耗费CPU的资源最大)
- 解压gzip加参数-d;
- 查看压缩文件命令file a.txt.gz
- 查看压缩文件内容zcat 1.txt.gz(先解压再查看)
- 压缩后保存源文件命令:gzip -c a.txt > /tmp/a.txt.gz
- 解压缩之后把原压缩文件保留命令: gzip -d -c /tmp/a.txt.gz > /tmp/d6z/b.txt
操作
root@01 d6z]# file a.txt.gz
a.txt.gz: gzip compressed data, was "a.txt", from Unix, last modified: Mon Oct 8 09:11:11 2018
[root@01 d6z]# gzip -c a.txt > /tmp/d6z/12.txt.gz
[root@01 d6z]# ls
12.txt.gz a.txt
[root@01 d6z]# gzip -c a.txt > /tmp/a.txt.gz
[root@01 d6z]# cd ..
[root@01 tmp]# ls
a.txt.gz
d6z
[root@01 d6z]# gzip -d -c a.txt.gz > /tmp/d6z/b.txt
[root@01 d6z]# ls
12.txt.gz a.txt.gz b.txt
[root@01 d6z]#
- 需要注意的是gzip不能压缩目录
- gzip -d和gunzip命令相同
三、bzip2压缩工具
- 相比gzip,bzip2压缩度更高,耗费cup资源更多
- yum install -y bzip2命令安装bzip2工具
- 解压缩bzip2命令:bzip2 -d或者bunzip2
- 同样支持-c指定目录
- bzip2默认压缩级别为9
- file a.txt.bz2
- 查看bz2压缩文件内容命令:bzcat a.txt.bz2
操作
[root@01 d6z]# ls
12.txt.gz a.txt b.txt
[root@01 d6z]# bzip2 a.txt
[root@01 d6z]# ls
12.txt.gz a.txt.bz2 b.txt
[root@01 d6z]# du -sh a.txt.bz2
272K a.txt.bz2
[root@01 d6z]#
[root@01 d6z]# bzip2 -d a.txt.bz2
[root@01 d6z]# ls
12.txt.gz a.txt b.txt
[root@01 d6z]# bzip2 a.txt
[root@01 d6z]# bunzip2 a.txt.bz2
[root@01 d6z]# ls
12.txt.gz a.txt b.txt
[root@01 d6z]#
[root@01 d6z]# bzip2 -c a.txt > /tmp/a.txt.bz2
[root@01 d6z]# cd ..
[root@01 tmp]# ls
a.txt.bz2 systemd-private-99505fa1d8a142bcb15b1bed3abb5db6-chronyd.service-StvTiZ
a.txt.gz systemd-private-99505fa1d8a142bcb15b1bed3abb5db6-vgauthd.service-kaRbPz
d6z systemd-private-99505fa1d8a142bcb15b1bed3abb5db6-vmtoolsd.service-f5c5pa
[root@01 tmp]#
[root@01 tmp]# file a.txt.bz2
a.txt.bz2: bzip2 compressed data, block size = 900k
[root@01 tmp]#
四、xz压缩工具
- 和gzip、bzip2用法基本相同,不常用,主要用于打包压缩
- 压缩度更高,同样有9个压缩级别
- 查看要是内容:xzcat 1.txt.xz
- xz同样不支持压缩目录
操作
[root@01 d6z]# xz a.txt
[root@01 d6z]# ls
12.txt.gz a.txt.xz b.txt
[root@01 d6z]# du -sh a.txt.xz
28K a.txt.xz
[root@01 d6z]#
[root@01 d6z]# unxz a.txt.xz
[root@01 d6z]# ls
12.txt.gz a.txt b.txt
[root@01 d6z]# xz a.txt
[root@01 d6z]# xz -d a.txt.xz
[root@01 d6z]# ls
12.txt.gz a.txt b.txt
[root@01 d6z]# xz -c a.txt > /tmp/a.txt.xz
[root@01 d6z]# cd ..
[root@01 tmp]# ls
a.txt.bz2 systemd-private-99505fa1d8a142bcb15b1bed3abb5db6-chronyd.service-StvTiZ
a.txt.gz systemd-private-99505fa1d8a142bcb15b1bed3abb5db6-vgauthd.service-kaRbPz
a.txt.xz systemd-private-99505fa1d8a142bcb15b1bed3abb5db6-vmtoolsd.service-f5c5pa
d6z
[root@01 d6z]# file a.txt.xz
a.txt.xz: XZ compressed data
[root@01 d6z]#
网友评论