机房的带宽是非常贵的。所以压缩是有必要的。
常见的压缩工具
括号表示列出来的文件,把内容都加到括号里
输入du -sh 1.txt,查看文件大小
输入gzip 1.txt,压缩它,用du -sh 1.txt查看他的大小。然后解压输入gzip -d 1.txt.gz,并用du -sh 1.txt查看他的大小。发现不再是2.2M了,而是1.3M了,是把哪些虚的空间挤掉了。还可以输入wc -l 1.txt检查是不是还是那么多行。
当输入gzip -1 1.txt,发现它的大小不一样了,那是因为他的压缩大小级别可以调整。其中-1是最不严谨,默认是6级别,9级别是严谨的,到时耗费的cpu的资源最狠。
还有一个gunzip 1.txt.gz,它同样可以解压缩。
当压缩到9级别是,就基本不再压缩了,已经达到极限了。
用file 1.txt.gz查看压缩的文件信息
用zcat 1.txt.gz查看文件内容
压缩的时候给它指定一个文件,就是让它压缩成一个新的文件。加-c,用ls /tmp/1.txt。gz,发现没有减少,再用file检查
关于解压,也可以给它指定一个文件,可以用du检查两个文件是同样的行数。
最后,gzip不能压缩目录。
bzip压缩的更狠
输入 bzip2 1.txt,然后查看他的大小,发现它的压缩更狠
也支持bunzip2的压缩,同样也支持bzip2 -c 1.txt >/tmp/1.txt.bz2指定到一个木木下。
bzip同样也有一个压缩级别。不管指定不指定级别,它都会默认是160k,默认的压缩级别就是9。
bzcat同样也可以查看文件
XZ压缩工具与前两个压缩文件基本一样。
下面都是一样的用法,它的压缩比前两个更狠与前面的步骤一样
zip支持压缩目录。
先拷贝一个目录实验一下,
把复制的这个放到aminglinux/2/下
这个压缩方法不同,先安装,再实验。
压缩步骤
压缩目录需要加-r
zip有一个特点,就是不删除之前的文件。
unzip是解压缩
由于压缩时,没有把原文件删除,解压就会提示,要不要把源文件覆盖。可以选择n或y,大A是全部都yes的意思。
unzip也可以指定解压到哪里去,如果不指定,就是在当前目录下(都是先输入文件,然后指定到解压到哪里去)
压缩前是什么文件名,压缩后还是这个文件名,不能改。zip不能查看文件内容,只能看文件列表。
1M字节=8比特,打包cvf。
如果一个问价之前有过打包,以后再打包,依然会成功,并把源文件覆盖
tar -xvf aminglinux.tar这个是解包。解包也会覆盖源目录。这个不会有任何提示。
不仅可以打包目录、文件,也可以打包目录+文件一起,
tar -tf aminglinux.tar可以看文件列表。
打包的时候可以过滤文件(其中*的文件要加双引号)exclude可以支持多个,但是必须有 –
tar在打包时,是可以压缩的。
bz2、xz都可以在tar中压缩的,
压缩的越大,时间就越久