linux下数据压缩的几种方法与查看方式

常用数据压缩库的编译与使用 由于在工作中有用到数据压缩的功能,我便查找了一些压缩函数库,对这些函数库进行了简单的实验,简要对比了各自的性能。在这里,我既是对以前工作的总结,也同时希望能给其他人带来一些帮助。首先,因为我工作中使用的环境是嵌入式Linux系统,采用的是C语言,因此我在选择压缩函数库的时候主要是选择一些能交叉编译的函数库。我前后共实验了三种函数库,分别是:LZO、ZILB和LZMA。分别在Windows平台和嵌入式Linux平台实验。由于我对压缩算法并没有深入的了解,实验的结果也不能确保一定正确,仅仅为作为一个参考。 阅读详情

1,tar命令

使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,tar命令本身不进行数据压缩,但可以在打包或解包的同时调用其它的压缩程序,比如调用gzip、bzip2
    选项:

     -c 创建.tar格式包文件
     -x 解开.tar格式包文件
     -v显示详细信息
     -f 使用归档文件
     -p 保留原始文件权限
     -C 解压到目标文件夹
     -z 调用gzip进行压缩或解压
     -j 调用bzip2进行压缩或解压

    打包示例: 

  tar -cvf /root/Desktop/aa.tar bb.txt 打包文件

    打包并压缩示例:

  tar -zcvf /root/Desktop/aa.tar.gz bb.txt  压缩文件

    解压缩示例:

  tar -zxvf /root/Desktop/aa.tar.gz -C /aa/bb 解压文件

2,gzip压缩

    常用数据压缩命令,压缩比例可手工调整,  压缩后文件名 filename.gz:

        注:压缩后文件可直接load至hive数据库,但每个文件只会产生一个map,查询效率极低

选项:

-c 将输出写到标准输出上,并保留原有文件。
-d 将压缩文件解压。
-l 对每个压缩文件,显示下列字段:
压缩文件的大小;未压缩文件的大小;压缩比;未压缩文件的名字
-r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。
-t 测试,检查压缩文件是否完整。
-v 对每一个压缩和解压的文件,显示文件名和压缩比。
-num 用指定的数字 num 调整压缩的速度,-1 或 --fast 表示最快压缩方法(低压缩比),
-9 或--best表示最慢压缩方法(高压缩比)。系统缺省值为 6。

压缩示例:

    gzip filename

    查看gzip压缩文件内容命令:     

    zcat filename.gz

     解压缩命令:

    gzip -d filename.gz

    压缩过程中可控制压缩率(1-9),1压缩最快,压缩率不高,9压缩最慢,压缩比例最高,缺省为6,例如:

    gzip -9 filename
3,bzip2压缩

    常用数据压缩命令,压缩比例比gzip高,压缩后文件名为filename.bz2

        注:压缩后文件可直接load至hive数据库

    选项

-c或——stdout:将压缩与解压缩的结果送到标准输出;
-d或——decompress:执行解压缩;
-f或-force:bzip2在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖。请使用此参数;
-h或——help:在线帮助;
-k或——keep:bzip2在压缩或解压缩后,会删除原始文件。若要保留原始文件,请使用此参数;
-s或——small:降低程序执行时内存的使用量;
-t或——test:测试.bz2压缩文件的完整性;
-v或——verbose:压缩或解压缩文件时,显示详细的信息;
-z或——compress:强制执行压缩;
-V或——version:显示版本信息;
--repetitive-best:若文件中有重复出现的资料时,可利用此参数提高压缩效果;
--repetitive-fast:若文件中有重复出现的资料时,可利用此参数加快执行效果。
    压缩示例:
    bzip2 filename

    解压缩示例:

    bzip2 -d filename.bz2

    直接查看压缩文件示例:     

    bzcat filename.bz2

使用默认压缩情况下压缩性能:

    bzip2 > gzip > tar


        
Linux 的超快速数据压缩工具:Zstandard Zstandard 由 Facebook 工程师 Yann Collet 于 2015 年开发,并于 2016 年开源发布。其设计目标是在保持高压缩比的同时,实现极高的压缩和解压速度。Zstandard 结合了 LZ77 压缩算法和 Finite State Entropy(FSE)熵编码技术,能够在现代硬件上高效运行。Zstandard 的优势:Zstandard 官方 GitHub: 官网: Zstandard 通过以下关键技术实现高效的压缩性能:大多数现代 Linux 发行版的官方软件源中都包含了 Z 阅读详情

相关推荐

XZ数据压缩技术详解与应用

在当今数字信息不断膨胀的时代,有效的数据压缩技术成为了解决存储与传输问题的关键。XZ数据压缩格式,基于LZMA2算法,以其高压缩比和优秀的压缩速度,在众多压缩技术中脱颖而出。本章将对XZ格式进行初步介绍,概述其发展背景、核心优势以及在现代IT行业中的应用。XZ格式由Tukaani项目发起,并迅速成为一种广泛支持的开源压缩标准。其核心算法LZMA2继承并改进了早期LZMA算法,通过更大的字典大小和多项优化,提供了更高的压缩效率。

weixin_33239721的博客 1464

【linux】查看Linux系统版本信息的几种方法

一、查看Linux内核版本命令(两种方法): 1、cat /proc/version 2、uname -a 二、查看Linux系统版本的命令(3种方法): 1、lsb_release -a,即可列出所有版本信息: 这个命令适用于所有的Linux发行版,包括RedHat、SUSE、Debian…等发行版。 2、cat /etc/redhat-release,这种方法只适合Redhat系的Linux: [root@S-CentOS home]# cat /etc/redhat-rele

13万+

Linux下查看压缩文件内容的10种方法(小结)

通常来说,我们查看归档或压缩文件的内容,需要先进行解压缩,然后再查看,比较麻烦。今天给大家介绍 10 不同方法,能够让你轻松地在未解压缩的情况下查看归档或压缩文件的内容。 从技术上讲,查看归档或压缩文件不提前进行解压是不可能的。本文介绍的方法中会将这些压缩文件在后台一个临时目录 /tmp 中进行解压缩。重启系统后,/tmp 目录的内容将被清空。 在进一步讨论之前,这里先解释一下归档和压缩文件。 归档 是将多个文件或文件夹组合成一个文件的过程。在这种情况下,生成的文件没有被压缩。 压缩 是一种将多个文件或文件夹组合成一个文件并进行压缩得到的结果文件。 归档文件不是压缩文件,但压缩文件

Linux 常用的压缩方式

一、zip文件压缩与解压 压缩: 语法:zip 压缩过后的文件名 要压缩的文件 例: [root@localhost ~]# zip li.zip /tmp adding: tmp/ (stored 0%) [root@localhost ~]# ls anaconda-ks.cfg li.zip 模板 图片 下载 桌面 initial-setup-ks.cfg 公共 视频 文档 音乐 解压缩: 语法:unzip 要解压的文件名 选项:-d...

user736765724的博客 1万+

移植 lwip,在 windows 内核构建一个 TCPIP 协议栈

移植 lwip,在 windows 内核构建一个 TCPIP 协议栈 亲,当你点开看这篇文章,就说明你知道我想要干什么事情,或者说,你知道在 Windows 的内核种绕开它的网络协议,再独立构建一个网络协议栈的意义。如果你要问我有 windows 系统的网络协议栈不用,移植 lwip 有什么意义,那么你可以关闭链接走人了,因为这篇文章不适合你,它不是讲 lwip 移植原理的。 经常关注我的博客的朋...

oRbIt 的专栏 3578

UOS忘记密码别慌!用LiveCD工具5分钟搞定,附命令行救援模式详细步骤

本文详细介绍了UOS系统密码遗忘时的两种解决方案:图形化LiveCD工具和命令行救援模式。针对普通用户,LiveCD工具提供5分钟快速重置密码的便捷操作;而技术人员可通过命令行深度解析系统分区挂载与密码修改流程。文章还包含安全加固建议,帮助用户预防类似问题发生。

weixin_27032989的博客 592

Linux命令之查看zip压缩包信息zipinfo

`zipinfo` 命令可以查看 zip 格式压缩包的信息。

二木成林 1万+

【数学模型】灰色关联分析

数学模型-灰色关联分析

suic009的博客 1万+

Linux 常用压缩格式

Linux系统用户可以根据自己的需求选择合适的压缩工具来进行文件压缩和解压操作。Linux系统中常用的压缩软件都有相应的命令行工具,并且可以通过软件包管理器进行安装。主要有gzip、bzip2、zip、tar、7z。

weixin_35723192的博客 2047

Vue3 + MQTT.js 实现 SCADA 实时数据通信:从不稳定到稳定的完整实践

本文介绍了SCADA组态引擎开发中MQTT协议的应用及优化实践。项目采用MQTT协议实现工业设备数据采集与可视化,但面临连接不稳定、数据格式多样化和数据绑定复杂三大问题。针对MQTT连接问题,分析发现超时设置过短(原8秒)、缺少客户端超时配置和心跳机制是主要原因。优化方案包括:协议转换(mqtt://→ws://)、双重超时保护(15秒手动+30秒客户端)、60秒心跳间隔等,显著提升了连接稳定性。通过完整代码实现展示了连接配置、认证处理和错误处理机制,为物联网数据传输提供了可靠解决方案。

weixin_36794508的博客 1399

博途S7-1500T 使用工艺对象驱动液压轴(含SimaHydTO库)

利用工艺对象控制液压轴位置含PLC控制和仿真程序文档资料下载地址如下:液压比例伺服阀的相关应用知识请参看下面的博客文章:液压位置闭环控制(比例伺服阀应用)_RXXW_Dor的博客-优快云博客。

RXXW_Dor的博客 2900

Linux怎么查看文件压缩效率,linux下数据压缩的几种方法与查看方式(示例代码)

1,tar命令使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,tar命令本身不进行数据压缩,但可以在打包或解包的同时调用其它的压缩程序,比如调用gzip、bzip2选项:-c 创建.tar格式包文件-x 解开.tar格式包文件-v显示详细信息-f 使用归档文件-p 保留原始文件权限-C 解压到目标文件夹-z 调...

weixin_39805364的博客 1695

YOLOv8改进 | 注意力篇 | 一文带你改进GAM、CBAM、CA、ECA等通道注意力机制和多头注意力机制

官方论文地址:官方论文地址点击此处即可跳转官方代码地址:官方代码地址点击此处即可跳转GAM旨在通过设计一种机制,减少信息损失并放大全局维度互动特征,从而解决传统注意力机制在通道和空间两个维度上保留信息不足的问题。GAM采用了顺序的通道-空间注意力机制,并对子模块进行了重新设计。具体来说,通道注意力子模块使用3D排列来跨三个维度保留信息,并通过一个两层的MLP增强跨维度的通道-空间依赖性。

Snu77的博客 4万+

linux下数据压缩的几种方法与查看方式(示例代码)

1,tar命令 使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,tar命令本身不进行数据压缩,但可以在打包或解包的同时调用其它的压缩程序,比如调用gzip、bzip2 选项: -c 创建.tar格式包文件 -x 解开.tar格式包文件 -v显示详细信息 -f 使用归档文件 -p 保留原始文件权限 -C 解压到目标文件夹 -z 调用gzip进行压缩或解压 -j 调用bzip2进行压缩或解压 打包示例:

m0_53869923的博客 327

数字图像处理 基于OpenCV的景深融合算法

还有的思路是对图像序列中的每一张图像分别进行拉普拉斯金字塔拆分,提取出每一张图像的高频信息和低频信息,得到所述图像序列对应的高频信息集合和低频信息集合。然后根据所述高频信息集合得到合成后的高频信息,对所述低频信息集合进行导向滤波处理得到合成后的低频信息,根据所述合成后的高频信息和低频信息做拉普拉斯金字塔重构,得到一张超景深图像。这里声明了几个变量,ImMer是最终合成的图像,coll是中间处理的变量,Coll_Ori是保存原图像数据的变量,dstWidth目标图像宽度(一般都是与原始图像大小一致)。

学以致用 知行合一 3902

由ip地址和子网掩码求网络号、主机号、广播地址(超详细)

1、用二进制数表示IP地址   在进行计算之前,我们首先要学会十进制的IP地址怎么转换为二进制的IP地址。   给出一个例子: 十进制:172.16.25.3 二进制:10101100.00010000.00011001.00000011 1、如果两台主机的网络号相同,我们就说它们是同一网段 2、主机号的意义 - 1)主机号部分全变成1,即为该网段的广播地址 - 2)主机号部分全变成0,即为该网段的网路地址(网络号) 3、如果主机号部分为x位,则该网络能容纳最大主机数为: 2的x次方-2。减2

爱吃雪糕的小布丁的博客 9万+

Linux下使用zlib实现数据压缩解压

本文举例说明了:项目过程中字符串数据传输的场景下(文件名列表),如何使用数据压缩减少带宽的开销; deflate(RFC1951):一种压缩算法,使用LZ77和哈弗曼进行编码; zlib(RFC1950):一种格式,是对deflate进行了简单的封装,他也是一个实现库(delphi中有zlib,zlibex) gzip(RFC1952):一种格式,也是对deflate进行的封装。 gzip = gzip头 + deflate编码的实际内容 + gzip尾 zlib = zlib头 + deflate编码的实

staticnetwind的专栏 8658

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

探索Linux中的lz4命令:高效的数据压缩工具

命令(或类似的基于LZ4算法的命令)是一种数据压缩工具,它使用LZ4算法对数据进行压缩和解压缩。LZ4算法是一种快速且高效的压缩算法,它特别适用于需要快速处理大量数据的场景,如实时数据处理、内存数据库压缩等。命令的工作原理基于LZ4算法,该算法通过查找并替换数据中的重复模式来实现压缩。LZ4算法的特点在于其极高的压缩和解压缩速度,以及较低的内存占用。这使得它成为需要快速处理大量数据的场景中的理想选择。或基于LZ4算法的压缩工具是存在的)通常指的是使用LZ4算法进行快速压缩和解压缩的工具。

听风的鱼鱼儿 1616

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

内网渗透之——数据压缩、传输

数据压缩 作用: 将文件打包,方便下载 Linux 直接使用tar命令压缩 windows 利用Rar.exe(winrar.exe里的执行文件) 参数说明: a 添加文件到压缩文件中 -k 锁定压缩文件 -s产生固体存档,这样可以增大压缩比 -r包括子目录 -m 设置压缩比 -m0 存储 添加到压缩文件时不压缩文件。 -m1 最快 使用最快方式(低...

wsnbbz的博客 2447

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Prometheus数据压缩和持久化实现原理

Prometheus 通过块存储格式和多种压缩算法(如 delta 编码和变长编码)来优化数据存储,减少存储需求。数据被分割成多个时间块,块内使用压缩技术,索引文件也被压缩以提高性能。持久化机制通过设置数据保留时间和自动清理策略来管理数据的长期存储,确保数据的可靠性和有效性。

运维老生常谈 1215

zlib数据压缩库:5分钟快速安装与高效使用终极指南

zlib数据压缩库作为业界标准的无损数据压缩解决方案,为各类应用程序提供了高效可靠的压缩与解压缩能力。无论您是开发桌面软件、移动应用还是服务器端程序,掌握zlib的安装和使用都将极大提升您的项目数据处理效率。 ## 🚀 快速安装指南:跨平台部署一步到位 ### 环境准备与源码获取 首先需要从官方仓库获取最新源码: ```bash git clone https://gitcode.com

gitblog_00545的博客 1065

zstd - 一种由Facebook使用的快速数据压缩算法

Zstandard是一个快速的实时无损数据压缩算法和压缩工具,它提供了由Facebook开发的高压缩比。 分类:Linux命令操作系统 2018-06-09 00:00:00 Zstandard(也被称为zstd)是一款免费的开源,快速实时数据压缩程序,具有更好的压缩比,由Facebook开发。它是用C语言编写的无损压缩算法(在Java中有一个重新实现) - 因此它是一个本地Linu...

pansaky的博客 5828

Linux命令探索:gzip - 数据压缩的艺术

gzip是一个广泛使用的文件压缩程序,它基于DEFLATE算法,可以极大地减少文件大小,且兼容性极佳,几乎所有的现代操作系统都能识别并处理gzip格式的文件。在数据处理和分析任务中,gzip减少存储需求:通过压缩大型日志文件、数据库备份等,有效管理磁盘空间。加速数据传输:压缩文件在网络上传输时速度更快,特别是在带宽有限的情况下。提高备份效率:压缩备份文件,缩短备份和恢复时间。归档文件:结合tar命令,创建压缩归档文件,便于长期存储和分发。

听风的鱼鱼儿 543

使用zlib库进行数据压缩

使用zlib库进行数据压缩zlib is designed to be a free, general-purpose, legally unencumbered -- that is, not covered by any patents -- lossless data-compression library for use on virtually any computer hardwa

280

探索Qt与zlib的完美结合:数据压缩与解压缩的利器

探索Qt与zlib的完美结合:数据压缩与解压缩的利器 【下载地址】Qt中使用zlib的示例程序 本仓库提供了一个在Qt中使用zlib库的示例程序。通过这个示例程序,您可以学习如何在Qt项目中集成和使用zlib库,实现数据的压缩和解压缩功能 ...

gitblog_09813的博客 498

Linux系统中查看文件属性,Linux系统中修改与查看文件属性的基本方法

chattrchattr 修改文件在linux第二扩展文件系统(e2fs)上的特有属性符号模式有+-=[asacdisu]几种格式.操作符`+'用来在文件已有属性的基础上增加选定的属性; `-'用来去掉文件上的选定的属性;而`='用来指定该文件的唯一属性.字符`asacdisu'用作文件新属性的选项: 不更新atime(a),同步更新(s),只能添加(a), 压缩(c),不可变(i),不可转移(d...

weixin_42526101的博客 314
上一篇: SSH版本信息可被获取漏洞解决方法
下一篇: NTP服务支持monlist命令漏洞修复方案
AA赵师傅
博客等级 码龄9年 89粉丝 124原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值