Linux常见压缩工具

一、压缩原理

目前我们使用的计算机系统是使用bytes单位计量的,实际上,计算机中最小的计量单位是bits
1 byte = 8 bits

在这里插入图片描述

一个空格代表一个bit,1byte就是8个空格,当存放数字1的时候,根据二级制计数,在这里存放的是00000001,7个0一个1,实际上前面7个0都是空的,但是由于要满足操作系统的存取方式,必须以8位为单位存储,所会造成有一些空间并没有填满。
压缩就是将这些没有使用到的空间丢出来,让文件的占用空间变小,这就是压缩技术。

解压缩技术:就是将压缩完的数据还原成未压缩的状态
压缩比:就是指压缩后与压缩前的文件所占用磁盘空间的大小比值

二、常见压缩解压缩命令

1、zip和unzip命令

zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有".zip"扩展名 的压缩文件
unzip为.zip压缩文件的解压缩程序

选项:

选项功能
-d从压缩文件内删除指定的文件
-m将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中
-t <日期时间>把压缩文件的日期设成指定的日期
-T检查备份文件内的每个文件是否正确无误
-<压缩效率>压缩效率是一个介于1-9的数值
-v执行是时显示详细的信息。或查看压缩文件目录,但不解压
-n解压缩时不要覆盖原有的文件
-o不必先询问用户,unzip执行后覆盖原有文件
-r递归压缩子目录下所有文件
“*.zip”解压当前目录下的所有zip文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2、gzip,gunzip命令

gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多出“.gz”扩展名。

选项功能
-d解开压缩文件
-v显示指令执行过程
-V显示版本信息
-r递归处理,将指定目录下的所有文件及子目录一并处理
-l列出压缩文件的相关信息

在这里插入图片描述
在这里插入图片描述

3、bzip2,bunzip2命令

bzip2命令用于创建和管理(包括解压缩)“.bz2”格式的压缩包

选项功能
-c将压缩与解压缩的结果送到标准输出
-d执行解压缩
-v压缩或解压缩文件时,显示详细的信息
-z强制执行压缩
-f或-forcebzip2在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖,使用此参数
-kbzip2在压缩或解压缩后,会删除原始文件。若要保留原始文件,使用此参数
-t测试.bz2压缩文件的完整性

在这里插入图片描述
4、xz,unxz命令
xz [OPTION]… FILE…

选项功能
-d解压缩
-#指定压缩比,默认是6,数字越大压缩比越大(1-9)
-k保留原文件

在这里插入图片描述
5、显示压缩文件内容
zcat,zless,bzcat,bzless,xzcat 不解压,只显示压缩的内容

在这里插入图片描述

三、打包归档命令 tar

tar 命令可以为linux的文件和目录创建档案。利用 tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。

选项参数
-c建立压缩档案
-x解压
-t查看内容 \
-r向压缩归档文件末尾追加文件
-u更新原压缩包中的文件
-A追加tar文件至归档

压缩:

    -z:有gzip属性的
	-j:有bz2属性的
	-J:有xz属性的
	-v:显示压缩过程
	-o:文件解压后到标准输出
	-N <日期格式> 或 --newer=<日期时间>:只将较指定日期更新的文件保存到备份文件
    -f: 必须的选项,选项必须是最后一个,后面要接的是压缩文件名

压缩:

tar -cvf file.tar file 打包命令, 将file文件打包成file.tar
tar -zcvf file.tar.gz file 先将file文件打包成file.tar,并且执行gzip压缩,最终命名
tar -jcvf file.tar.bz2 file 先将file文件打包成file.tar,并且执行bzip2压缩,最终命名
tar -Jcvf file.tar.xz file 先将file文件打包成file.tar,并且执行xz压缩,最终命名

解压:

*.tar: tar -xvf 解压
*.tar.gz tar -xzvf 解压
*.tar.bz2 tar -xjvf 解压
*.gz gunzip 解压
*.bz2 bunzip2 解压
.rar unrar
.zip unzip

在这里插入图片描述

四、dd----转换或拷贝文件命令

	 dd  if=/dev/zero of=/tmp/file bs=1K  count=10
	 	if:标准输入:输入的文件名,指定源文件
	 	of:标准输出,输出的文件名,指定目的文件
	 	bs:指定输入输出块大小
	 		ibs:读入块
	 		obs:输出块
	 	count:拷贝多个块
	 	
	 	skip= :从输入的文件跳过多少个块后复制
	 	seek= :从输出的文件跳过多少个块后复制
	 	conv= :转换

1、备份磁盘

dd if=/dev/sda of=/dev/sdb

2、备份磁盘到文件

dd if=/dev/sda of=/tmp/file
dd if=/dev/sda | gzip > /tmp/file.gz

3、将备份文件恢复到指定磁盘

dd if=/tmp/file of=/dev/sdc

4、备份MBR:

dd if=/dev/sda of=/tmp/file count=1 bs=512

5、拷贝内存文件

dd if=/dev/mem of=/tmp/file bs=1m count=1024

6、测试硬盘的读写速率

dd if=/dev/zero of=/tmp/file bs=100K count=1024

测试硬盘的最佳块大小,1K 4K 8 K 16K
dd if=/dev/zero of=/tmp/file bs=1024 count=1000000
dd if=/dev/zero of=/tmp/file bs=4096 count=250000
dd if=/dev/zero of=/tmp/file bs=8192 count=125000

7、转换

dd if=/tmp/file of=/tmp/file1 conv=ucase

五、cpio 备份命令

1、 常用操作模式
(1)备份: cpio -ocvB > file
(2)还原: cpio -ivcdu > file
(3)查看: cpio -ivct > file

2、选项

选项功能
-o拷贝文件到某个文件或者设备
-c存储方式
-v显示存储过程
-B以XXX块大小拷贝, 默认是512 ,以5120大小拷贝
-i从某个文件或者设备拷贝出
-d自动创建目录
-u自动更新文件覆盖旧文件 update
-t查看文件或者设备中的内容
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值