linux命令学习笔记(32):gzip命令
减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。
gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压
缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格
式。据统计,gzip命令对文本文件有60%~%的压缩率。
.命令格式:
gzip[参数][文件或者目录]
.命令功能:
gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多出".gz"的扩展名。
.命令参数:
-a或--ascii 使用ASCII文字模式。
-c或--stdout或--to-stdout 把压缩后的文件输出到标准输出设备,不去更动原始文件。
-d或--decompress或----uncompress 解开压缩文件。
-f或--force 强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接。
-h或--help 在线帮助。
-l或--list 列出压缩文件的相关信息。
-L或--license 显示版本与版权信息。
-n或--no-name 压缩文件时,不保存原来的文件名称及时间戳记。
-N或--name 压缩文件时,保存原来的文件名称及时间戳记。
-q或--quiet 不显示警告信息。
-r或--recursive 递归处理,将指定目录下的所有文件及子目录一并处理。
-S<压缩字尾字符串>或----suffix<压缩字尾字符串> 更改压缩字尾字符串。
-t或--test 测试压缩文件是否正确无误。
-v或--verbose 显示指令执行过程。
-V或--version 显示版本信息。
-num 用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩
方法(高压缩比)。系统缺省值为6。
.使用实例:
实例1:把test6目录下的每个文件压缩成.gz文件
命令:
gzip *
输出:
[root@localhost test6]# ll
总计
---xr--r-- root mail - : linklog.log
---xr--r-- mail users - : log2012.log
-rw-r--r-- mail users - : log2013.log
-rw-r--r-- root mail - : log2014.log
-rw-r--r-- root mail - : log2015.log
-rw-r--r-- root mail - : log2016.log
-rw-r--r-- root mail - : log2017.log
[root@localhost test6]# gzip *
[root@localhost test6]# ll
总计
---xr--r-- root mail - : linklog.log.gz
---xr--r-- mail users - : log2012.log.gz
-rw-r--r-- mail users - : log2013.log.gz
-rw-r--r-- root mail - : log2014.log.gz
-rw-r--r-- root mail - : log2015.log.gz
-rw-r--r-- root mail - : log2016.log.gz
-rw-r--r-- root mail - : log2017.log.gz
[root@localhost test6]#
说明:
实例2:把例1中每个压缩的文件解压,并列出详细的信息
命令:
gzip -dv *
输出:
[root@localhost test6]# ll
总计
---xr--r-- root mail - : linklog.log.gz
---xr--r-- mail users - : log2012.log.gz
-rw-r--r-- mail users - : log2013.log.gz
-rw-r--r-- root mail - : log2014.log.gz
-rw-r--r-- root mail - : log2015.log.gz
-rw-r--r-- root mail - : log2016.log.gz
-rw-r--r-- root mail - : log2017.log.gz
[root@localhost test6]# gzip -dv *
linklog.log.gz: 99.6% -- replaced with linklog.log
log2012.log.gz: 99.6% -- replaced with log2012.log
log2013.log.gz: 47.5% -- replaced with log2013.log
log2014.log.gz: 0.0% -- replaced with log2014.log
log2015.log.gz: 0.0% -- replaced with log2015.log
log2016.log.gz: 0.0% -- replaced with log2016.log
log2017.log.gz: 0.0% -- replaced with log2017.log
[root@localhost test6]# ll
总计
---xr--r-- root mail - : linklog.log
---xr--r-- mail users - : log2012.log
-rw-r--r-- mail users - : log2013.log
-rw-r--r-- root mail - : log2014.log
-rw-r--r-- root mail - : log2015.log
-rw-r--r-- root mail - : log2016.log
-rw-r--r-- root mail - : log2017.log
[root@localhost test6]#
说明:
实例3:详细显示例1中每个压缩的文件的信息,并不解压
命令:
gzip -l *
输出:
[root@localhost test6]# gzip -l *
compressed uncompressed ratio uncompressed_name
99.6% linklog.log
99.6% log2012.log
47.5% log2013.log
0.0% log2014.log
0.0% log2015.log
0.0% log2016.log
0.0% log2017.log
99.5% (totals)
说明:
实例4:压缩一个tar备份文件,此时压缩文件的扩展名为.tar.gz
命令:
gzip -r log.tar
输出:
[root@localhost test]# ls -al log.tar
-rw-r--r-- root root - : log.tar
[root@localhost test]# gzip -r log.tar
[root@localhost test]# ls -al log.tar.gz
-rw-r--r-- root root - : log.tar.gz
说明:
实例5:递归的压缩目录
命令:
gzip -rv test6
输出:
[root@localhost test6]# ll
总计
---xr--r-- root mail - : linklog.log
---xr--r-- mail users - : log2012.log
-rw-r--r-- mail users - : log2013.log
-rw-r--r-- root mail - : log2014.log
-rw-r--r-- root mail - : log2015.log
-rw-r--r-- root mail - : log2016.log
-rw-r--r-- root mail - : log2017.log
[root@localhost test6]# cd ..
[root@localhost test]# gzip -rv test6
test6/log2014.log: 0.0% -- replaced with test6/log2014.log.gz
test6/linklog.log: 99.6% -- replaced with test6/linklog.log.gz
test6/log2015.log: 0.0% -- replaced with test6/log2015.log.gz
test6/log2013.log: 47.5% -- replaced with test6/log2013.log.gz
test6/log2012.log: 99.6% -- replaced with test6/log2012.log.gz
test6/log2017.log: 0.0% -- replaced with test6/log2017.log.gz
test6/log2016.log: 0.0% -- replaced with test6/log2016.log.gz
[root@localhost test]# cd test6
[root@localhost test6]# ll
总计
---xr--r-- root mail - : linklog.log.gz
---xr--r-- mail users - : log2012.log.gz
-rw-r--r-- mail users - : log2013.log.gz
-rw-r--r-- root mail - : log2014.log.gz
-rw-r--r-- root mail - : log2015.log.gz
-rw-r--r-- root mail - : log2016.log.gz
-rw-r--r-- root mail - : log2017.log.gz
说明:
这样,所有test下面的文件都变成了*.gz,目录依然存在只是目录里面的文件相应变成了*.gz.这就是压缩,和打包
不同。因为是对目录操作,所以需要加上-r选项,这样也可以对子目录进行递归了。
实例6:递归地解压目录
命令:
gzip -dr test6
输出:
[root@localhost test6]# ll
总计
---xr--r-- root mail - : linklog.log.gz
---xr--r-- mail users - : log2012.log.gz
-rw-r--r-- mail users - : log2013.log.gz
-rw-r--r-- root mail - : log2014.log.gz
-rw-r--r-- root mail - : log2015.log.gz
-rw-r--r-- root mail - : log2016.log.gz
-rw-r--r-- root mail - : log2017.log.gz
[root@localhost test6]# cd ..
[root@localhost test]# gzip -dr test6
[root@localhost test]# cd test6
[root@localhost test6]# ll
总计
---xr--r-- root mail - : linklog.log
---xr--r-- mail users - : log2012.log
-rw-r--r-- mail users - : log2013.log
-rw-r--r-- root mail - : log2014.log
-rw-r--r-- root mail - : log2015.log
-rw-r--r-- root mail - : log2016.log
-rw-r--r-- root mail - : log2017.log
[root@localhost test6]#
linux命令学习笔记(32):gzip命令的更多相关文章
- linux命令学习笔记( 2 ) : cd 命令
Linux cd 命令可以说是Linux中最基本的命令语句,其他的命令语句要进行操作,都是建立在使用 cd 命令上的. 所以,学习Linux 常用命令,首先就要学好 cd 命令的使用方法技巧. . 命 ...
- linux命令学习笔记( 7 ) : mv 命令
mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令, 经常用来备份文件或者目录. .命令格式: mv [选项] 源文件或目 ...
- linux命令学习笔记(62)-curl命令-url下载工具
linux curl是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载,所以是综合 传输工具,但按传统,习惯称url为下载工具. 一,curl命令参数,有好多我没有用过,也不知道 ...
- Linux基础学习笔记以及常用命令
1.windows自带命令进入mysql所在磁盘 2.进入mysql安装目录的bin文件 D:\>cd D:\Program Files (x86)\mysql-5.5.25-winx64\ ...
- Linux命令学习笔记目录
Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...
- linux基础命令学习笔记(二)
linux基础命令学习笔记(二) 1.kill :终止进程 kill pid (唯一标示一个进程) kill -9 强制终止 kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...
- linux命令学习笔记(25):linux文件属性详解
Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组. 最近访问或修改的时间等内容.具体情况如下: 命令: ls -lih 输出: [root@loc ...
- TCP/IP协议学习之实例ping命令学习笔记
TCP/IP协议学习之实例ping命令学习笔记(一) 一. 目的为了让网络协议学习更有效果,在真实网络上进行ping命令前相关知识的学习,暂时不管DNS,在内网中,进行2台主机间的ping命令的整个详 ...
- 【Redis】命令学习笔记——键(key)(20个超全字典版)
安装完redis和redis-desktop-manager后,开始学习命令啦!本篇基于redis 4.0.11版本,从对键(key)开始挖坑! 准备工作,使用db1(默认db0,由于之前练习用db0 ...
- 学习笔记之shell命令
linux shell命令学习笔记:~这里只是对自己一些常用但是不熟悉的的命令进行记录 -------------------------------------------------------- ...
随机推荐
- Android---61---TabHost简单使用
与TabHost结合使用的组件: TabWidget:代表选项卡的标签条 TabSpec:代表选项卡的一个Tab页面 TabHost不过一个简单的容器,它提供两个方法来创建.加入选项卡 newTabS ...
- 面试题:使用finalkeyword修饰一个变量时,是引用不能变,还是引用的对象不能变?
/* * 问题:使用finalkeyword修饰一个变量时,是引用不能变,还是引用的对象不能变 * 答: * 使用finalkeyword修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内 ...
- linux 内核(系统)、函数的理解、宏的程序调试
1.操作系统 1.1.Linux 内核(系统)的组成的部分: 内核主要有:进程调度.内存管理.虚拟文件系统.网络接口和进程通信五个部分组成. (1)进程调度 进程调度是CPU对多个进程对CPU访问的调 ...
- ASP.NET MVC 扩展自定义视图引擎支持多模板&动态换肤skins机制
ASP.NET mvc的razor视图引擎是一个非常好的.NET MVC 框架内置的视图引擎.一般情况我们使用.NET MVC框架为我们提供的这个Razor视图引擎就足够了.但是有时我们想在我们的 ...
- VueJS表单控件操作
概念说明 v-model指令:在表单控件元素上创建双向数据绑定.v-model 会根据控件类型自动选取正确的方法来更新元素. 输入框 实例中演示了 input 和 textarea 元素中使用 v-m ...
- linux 静态库使用经验
在编写程序的过程中,对于一些接口往往抽象成lib库的形式,甚至有些程序只有一个主程序,其他接口的调用都是库的形式存在.较多的使用库会比较利于程序的维护,因为我们的程序都可以被其他的人使用,但是往往库的 ...
- 看完这篇再不会 View 的动画框架,我跪搓衣板
引言 众所周知,一款没有动画的 app,就像没有灵魂的肉体,给用户的体验性很差.现在的 android 在动画效果方面早已空前的发展,1.View 动画框架 2.属性动画框架 3.Drawable 动 ...
- 搭建私有Nuget仓库
使用Nexus搭建私有Nuget仓库 https://www.cnblogs.com/Erik_Xu/p/9211471.html 前言 Nuget是ASP .NET Gallery的一员,是免费.开 ...
- erlang和golang的比较
1)垃圾回收GC 像 Java 一样,Go 的垃圾回收是全局的,这意味着一旦垃圾回收被触发,所有的 goroutine 都会被暂停,造成一段时间的业务延迟. Erlang 的垃圾回收是进程级别的,每一 ...
- 首选项框架PreferenceFragment部分源代码分析
由于要改一些settings里面的bug以及之前在里面有做过勿扰模式,准备对勿扰模式做一个总结,那先分析一下settings的源代码,里面的核心应该就是android3.0 上面的首选项框架Prefe ...