专业IT网络知识平台,分享IT百科知识、生活百科知识解答!

易企推科技
易企推科技

Linux命令之lz4命令如何使用

来源:小易整编  作者:小易  发布时间:2024-03-13 08:05
摘要:一、lz4命令简介lz4是一种压缩格式,特点是压缩/解压缩速度超快(压缩率不如gzip),如果你特别在意压缩速度,或者当前环境的cpu资源紧缺,可以考虑这种格式。lz4是一种非常快速的无损压缩算法,基于字节对齐lz77系列压缩方案。lz4提...
一、lz4命令简介

lz4是一种压缩格式,特点是压缩/解压缩速度超快(压缩率不如gzip),如果你特别在意压缩速度,或者当前环境的cpu资源紧缺,可以考虑这种格式。lz4是一种非常快速的无损压缩算法,基于字节对齐lz77系列压缩方案。lz4提供每核400 mb/s的压缩速度,可通过多核cpu线性扩展。它的特点是极快的解码器,每核速度可达多gb/s,通常在多核系统上达到ram速度限制项目。lz4遵循上面说到的lz77思想理论,通过滑动窗口、hash表、数据编码等操作实现数据压缩。压缩过程以至少4字节为扫描窗口查找匹配,每次移动1字节进行扫描,遇到重复的就进行压缩。centos7默认安装了lz4命令,可以实现lz4格式文件的压缩和解压缩。

Linux命令之lz4命令如何使用

二、命令使用示例

1、查看命令版本

lz4命令安装版本是1.7.5

[root@s76 ~]# lz4 -V*** LZ4 command line interface 64-bits v1.7.5, by Yann Collet ***

2、获取命令帮助

日常使用中如果忘记lz4命令语法格式,我们可以通过lz4 --help或者man lz4命令获取lz4命令的帮助信息。

[root@s76 ~]# lz4 --help[root@s76 ~]# man lz4

3、命令安装

centos7默认安装了lz4命令,如果没有安装,可以使用yum安装方式安装该命令。

[root@s76 ~]# yum install -y lz4 lz4-devel

4、压缩单个文件

[root@s76 ~]# lz4 anaconda-ks.cfg test.lz4Compressed 2927 bytes into 1825 bytes ==> 62.35%

5、压缩多个文件

压缩多个文件使用参数-m,压缩后的文件名是源文件加上lz4后缀。lz4命令只可以将单个文件压缩,如果我们需要将多个文件压缩到一个文件,我们需要将lz4和tar命令结合使用。

[root@s76 ~]# lz4 -m anaconda-ks.cfg original-ks.cfg[root@s76 ~]# lltotal 16-rw-------. 1 root root 2927 Feb 8 15:19 anaconda-ks.cfg-rw-------. 1 root root 1825 Feb 8 15:19 anaconda-ks.cfg.lz4-rw-------. 1 root root 2045 Feb 8 15:19 original-ks.cfg-rw-------. 1 root root 1216 Feb 8 15:19 original-ks.cfg.lz4[root@s76 ~]# tar -cvf anaconda-ks.cfg original-ks.cfg |lz4 - 2.tar.lz4Compressed 16 bytes into 35 bytes ==> 218.75%

6、压缩目录

lz4只能压缩文件,如果需要压缩目录需要结合tar命令一起。

[root@s76 ~]# tar cvf - test | lz4 - 1.tar.lz4test/test/1.tarCompressed 20480 bytes into 325 bytes ==> 1.59%

7、压缩后删除源文件

[root@s76 ~]# lz4 --rm hi.txt hi.txt.lz4Compressed 5 bytes into 24 bytes ==> 480.00%[root@s76 ~]# lltotal 24-rw-r–r–. 1 root root 325 Feb 12 20:57 1.tar.lz4-rw-------. 1 root root 10240 Feb 12 20:40 anaconda-ks.cfg-rw-r–r–. 1 root root 24 Feb 12 21:01 hi.txt.lz4-rw-------. 1 root root 2045 Feb 8 15:19 original-ks.cfgdrwxr-xr-x. 2 root root 19 Feb 12 20:38 test

8、解压lz4文件

[root@s76 ~]# lz4 -d hi.txt.lz4Decoding file hi.txthi.txt.lz4 : decoded 5 bytes[root@s76 ~]# lltotal 28-rw-r–r–. 1 root root 325 Feb 12 20:57 1.tar.lz4-rw-------. 1 root root 10240 Feb 12 20:40 anaconda-ks.cfg-rw-r–r–. 1 root root 5 Feb 12 21:01 hi.txt-rw-r–r–. 1 root root 24 Feb 12 21:01 hi.txt.lz4-rw-------. 1 root root 2045 Feb 8 15:19 original-ks.cfgdrwxr-xr-x. 2 root root 19 Feb 12 20:38 test

9、解压并删除压缩文件

[root@s76 ~]# lz4 --rm -d hi.txt.lz4Decoding file hi.txthi.txt.lz4 : decoded 5 bytes[root@s76 ~]# lltotal 24-rw-r–r–. 1 root root 325 Feb 12 20:57 1.tar.lz4-rw-------. 1 root root 10240 Feb 12 20:40 anaconda-ks.cfg-rw-r–r–. 1 root root 5 Feb 12 21:01 hi.txt-rw-------. 1 root root 2045 Feb 8 15:19 original-ks.cfgdrwxr-xr-x. 2 root root 19 Feb 12 20:38 test

10、高压缩比方式压缩

[root@s76 ~]# lz4 -9 hi.txt hi.txt.lz4Compressed 5 bytes into 24 bytes ==> 480.00%

11、压缩并覆盖文件

[root@s76 ~]# lz4 hi.txt.lz4 hi.txthi.txt already exists; do you wish to overwrite (y/N) ? yCompressed 24 bytes into 43 bytes ==> 179.17%[root@s76 ~]# lz4 -f hi.txt.lz4 hi.txtCompressed 24 bytes into 43 bytes ==> 179.17%

12、解压并输出文件

[root@s76 ~]# cat hi.txthi,wuhs[root@s76 ~]# lz4 -dc hi.txt.lz4hi,wuhs

13、解压速度测试

1个22G的文件解压花费时间5分18秒,解压后的大小为45G。

三、lz4命令使用语法及参数说明

1、命令格式

#lz4 [arg] [input] [output]

2、参数说明

参数参数说明
-1快速压缩(默认)
-9高压缩
-d解压缩(默认为.lz4扩展名)
-z强制压缩
-f覆盖输出而不提示
-k保留源文件(默认)
–rm成功地解除/压缩后删除源文件
-h/-H显示帮助/长帮助和退出
-V显示版本号并退出
-v详细模式
-q取消警告;指定两次也可以取消错误
-c强制写入标准输出,即使它是控制台
-t测试压缩文件完整性
-m多个输入文件(表示自动输出文件名)
-r在目录上递归操作(也设置为-m)
-l使用旧格式压缩(Linux内核压缩)

以上就是Linux命令之lz4命令如何使用的详细内容,更多请关注易企推科技其它相关文章!


本文地址:网络知识频道 https://www.hkm168.com/jiqiao/1147053.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


网络知识
小编:小易整编
相关文章相关阅读
  • excel如何插入单元格

    excel如何插入单元格

    excel插入单元格的方法:首先单击上方【开始】菜单;然后在弹出新窗口以后,选择【单元格】;接着单击【插入】下的小三角,下方出现新窗口,再点击【插入单元格】;最后根据需要选择移动选项即可。excel插入单元格的方法:1、首先单击上方【开始】...

  • 如何使用Vue技术进行移动端开发

    如何使用Vue技术进行移动端开发

    如何使用Vue技术进行移动端开发随着移动互联网的迅猛发展,移动端应用的开发变得越来越重要。Vue.js作为一款轻量级、高性能的前端框架,被广泛应用于移动端开发中。本文将介绍如何使用Vue技术进行移动端开发,并给出具体的代码示例。一、准备工作...

  • 三星电视如何投屏

    三星电视如何投屏

    三星电视可以通过三星电视自带的投屏功能、三星电视官方投屏应用程序和第三方投屏应用程序来投屏。详细介绍:1、三星电视自带的投屏功能,在三星电视遥控器上按下“source”或“输入”按钮,选择“screenmirroring”选项,然后打开要...

  • 如何清理魔兽世界插件缓存

    如何清理魔兽世界插件缓存

    魔兽世界缓存文件1、第一步,找到你电脑桌面上的【我的电脑】图标,然后点击打开。第二步:打开我的电脑后,在我的电脑里面找到wow的安装文件夹。第三步:打开wow的安装文件夹后,在文件夹内选择wtf文件夹直接删除。2、Cache是WOW的缓存文...

  • 如何取消PPT中的所有动画效果和声音

    如何取消PPT中的所有动画效果和声音

    当我们为ppt添加了动画效果后,有时又会发现需要取消这些动画效果。那么,ppt动画效果怎么全部取消?幸运的是,powerpoint提供了一种简单而高效的方法。下面小编就来为大家讲讲如何去掉ppt的动画效果,让观众更好地关注您想要传达的信息。...

  • 如何申请域名

    如何申请域名

    申请步骤:1、准备申请资料;2、寻找域名注册商;3、查询域名;4、正式申请;5、申请成功。详细介绍:1、准备申请资料:如果是个人申请域名,需要准备个人身份证;如果是企业申请域名,需要提供企业营业执照。若是的域名,目前只给企业申请使用,个人无...

  • html如何解析%%

    html如何解析%%

    html是一种用于创建网页结构的标记语言,它提供了一种方式来标记文本、图像、链接以及其他与网站相关的内容。html可以在网页中插入各种元素,包括表格、列表、图像、表格等等。本文将讨论html的解析过程以及如何编写有效的html代码。HTML...

  • 什么是Linux系统中nc命令?nc命令的用法详解

    什么是Linux系统中nc命令?nc命令的用法详解

    这篇文章主要介绍了linux系统中nc命令的基本用法,nc命令非常之强大,这里先简单介绍它用来作端口扫描以及文件传输等的基础使用。功能说明:功能强大的网络工具,在网络工具中有“瑞士军刀”美誉,其有Windows和Linux的版本。因为它短小...

  • 周排行
  • 月排行
  • 年排行

精彩推荐