N天学习一个linux命令之xz
前言
最近使用gitbook写接口文档,gitbook需要nodejs执行环境。安装nodejs时,发现安装包使用的是xz后缀,它是使用LZMA无损数据压缩算法生成的文件,压缩率很高。GNU已经内置了xz命令,linux操作系统一般都自带了这个命令。
用途
使用lzma算法压缩文件,或者解压.xz,.lzma后缀的压缩文件
用法
xz [option]... [file]...
常用参数
动作模式类参数
-z, --compress
对文件进行压缩, 默认的模式
-d, --decompress, --uncompress
解压文件
-t, --test
测试压缩文件的完整性
动作修饰符类参数
-k, --keep
保留原始文件,默认会删除
-f, --force
是否强制执行,有些操作有副作用,默认不允许,可以加上这个参数强制执行
-c, --stdout, --to-stdout
内容输出到标准输出缓存区,默认会写入文件
-S .suf, --suffix=.suf
指定文件后缀名
--files[=file]
从文件中读待压缩或者解压缩的文件
基本文件格式和压缩选项类参数
-F format, --format=format
压缩格式
auto:这个是默认格式,压缩时使用xz,解压时自动检测压缩文件格式
xz:以xz格式压缩和只解压xz格式的压缩文件
lzma or alone:以lzma格式压缩,解压时只解压lzma格式的压缩文件
raw:压缩或者解压文件,不包含headers,高级用户才使用,一般不使用这个格式
-C check, --check=check
内容完整性检查,只针对xz格式生效
none:不检查
crc32:计算crc32
crc64:计算crc64,默认使用这个
sha256:sha256算法
-0 ... -9
压缩等级
数字越大,压缩率越高,但相应的占用系统资源和压缩时间会相应的更多
默认是-6
-0 ... -2: 压缩很快,低内存使用
-3 ... -5:更好的压缩比,中低内存使用,需要的时间比 -0 ... -2长
-6 ... -9:极高的压缩比,中高内存使用
-M limit, --memory=limit
设置内存使用限制,默认是系统物理内存的40%
固定大小:-M 80Mib
系统物理内存百分比:-M 70%
其它类的参数
-v, --verbose
输出详细的信息,指定2次会输出更详细的信息,可以用于调试
-h, --help
输出简易版本帮助信息
-H, --long-help
输出详细内容帮助信息
-V, --version
输出程序版本
实践
压缩文件
[root@vm ~]# xz --keep --verbose node-v8.9.4-linux-x64.tar
node-v8.9.4-linux-x64.tar (1/1)
100.0 % 11.8 MiB / 61.1 MiB = 0.193 2.6 MiB/s 0:23
解压文件
[root@vm ~]# xz --decompress --keep --verbose node-v8.9.4-linux-x64.tar.xz
node-v8.9.4-linux-x64.tar.xz (1/1)
100.0 % 11.8 MiB / 61.1 MiB = 0.193
后记
1.压缩和解压缩比较耗系统资源,操作时尽量选择系统不繁忙的时间段
2.支持和打包命令tar一起使用
参考资料
【1】man xz
【2】tar.xz格式文件的解压方法
http://www.cnblogs.com/wlei/archive/2012/08/28/2660274.html
N天学习一个linux命令之xz的更多相关文章
- N天学习一个Linux命令之帮助命令:man
前言 工作中每天都在使用常用的命令和非常用的命令,忘记了用法或者参数,都会bing一下,然后如此循环.一直没有真正的系统的深入的去了解命令的用法,我决定打破它.以前看到有人,每天学习一个linux命令 ...
- N天学习一个linux命令之scp
用途 通过ssh通道,不同主机之间复制文件 用法 scp [options] [user@host:]file1 [user2@host2:]file2 常用参数 -1使用 ssh 1协议 -2使用s ...
- N天学习一个Linux命令之free
用途 查看系统内存(物理/虚拟/缓存/共享)使用情况 用法 free [-b | -k | -m | -g | -h] [-o] [-s delay ] [-c count ] [-a] [-t] [ ...
- N天学习一个linux命令之ping
用途 检测主机是否可到达,也就是说,目标主机是否可以联网,还可以用于检测网速.通过发送ICMP ECHO_REQUEST数据包检测. 用法 ping [options] destination 常用选 ...
- N天学习一个linux命令之kill
用途 用于终止进程 用法 kill [-s signal|-p] [--] pid... kill -l [signal] 说明 1.默认发送信号15(请求终止进程,程序可以捕获,操作系统会杀死没有对 ...
- N天学习一个linux命令之du
用途 统计文件或者目录占用硬盘空间大小 用法 du [OPTION] [FILE]du [OPTION] --files0-from=F 常用参数 -a, --all统计所有文件,不仅仅是目录 -b, ...
- 每天学习一个Linux命令-目录
在工作中总会零零散散使用到各种Linux命令,从今天开始详细的学习一下linux常用命令,坚持每天一个命令,学习的主要参考资料为: 1.竹子-博客(https://www.cnblogs.com/pe ...
- N天学习一个linux命令之umask
前言 umask不是linux命令,而是shell内置的指令,俗称用户权限掩码,用于对用户创建的文件和目录设置默认权限.默认的权限掩码是0022,也就是说新创建的文件权限是0644,新创建的目录权限是 ...
- N天学习一个linux命令之ip
用途 show / manipulate routing, devices, policy routing and tunnels 用法 通用格式 ip [ OPTIONS ] OBJECT { CO ...
随机推荐
- 【洛谷4158/BZOJ1296】[SCOI2009]粉刷匠(动态规划)
题目:洛谷4158 分析: 这题一看就是动态规划. 可以看出,如果每个木条粉刷的次数是固定的,那么这些木条是互不干扰的,因此对于每个木条可以通过dp来求出把T次中的j次分配给这个木条时可以获得的最大正 ...
- 最近几道hihocode不会做的题目
几个易错点 1.数据范围一定要开大,一般多开10个或者5个. 2. 从经常写 int a[n], 然后访问a[n], 这显然会下标越界. 3. 浮点数,无法精确的比较,等于,大于,小于, 都需要使用e ...
- 【转】mysql的数据类型
转自:http://mrxiong.blog.51cto.com/287318/1651098 一.数值类型 Mysql支持所有标准SQL中的数值类型,其中包括严格数据类型(INTEGER,SMALL ...
- MVC系列学习(二)-初步了解ORM框架-EF
1.新建 一个控制台项目 2.添加一个数据项 a.选择数据库 注:数据库中的表如下: b.选择EF版本 c.选择表 3.初步了解EF框架 看到了多了一个以 edmx后缀的文件 在edmx文件上,右击打 ...
- [ BZOJ 4318 & 3450 / CodeForces 235 B ] OSU!
\(\\\) \(Description\) 一共进行\(N\)次操作,生成一个长度为\(N\)的\(01\)序列,成功对应\(1\),失败对应\(0\),已知每一次操作的成功率\(p_i\). 在这 ...
- 常用的Axure操作方法(1)
1. 保存原型图片到本地,如在网页上看到图标素材,好多个在一张图上. 如上图所示,将图片拖入axure中,利用分割或者裁剪,把小图标 ...
- 背包系列 hdu3449 有依赖背包
这道题真正困扰了笔者3,4天,冥思苦想几日无果之后,只能去找大牛的解法.结合网上的大牛解法与自己的理解,笔者终于解决了这个坑了,在此小庆幸一下. 原题如下: Consumer Time Limit: ...
- [Windows Server 2012] 安装护卫神·主机管理系统
★ 欢迎来到[护卫神·V课堂],网站地址:http://v.huweishen.com★ 护卫神·V课堂 是护卫神旗下专业提供服务器教学视频的网站,每周更新视频.★ 本节我们将带领大家:安装护卫神·主 ...
- 【LaTeX】对xelatex的中英文设置不同的字体
不建议用Ctex套装,不好用. 用MixTex+TexStudio! XeTeX处理中文非常方便,不需要任何设置,就能够使用系统中安装的TrueType和OpenType字体. MikTeX2.7中已 ...
- 戴尔14G服务器用H740P配置阵列
公司采购了几台dell r740机器.做阵列的方式跟之前ctrl+r有很大改动. 戴尔14G机器已经面世一段时间了,14G的机器使用过后都能发现器性能比上一代机器提升了很多,今天给大家带来戴尔14代服 ...